diff --git a/src/bin/pg_upgrade/slru_io.c b/src/bin/pg_upgrade/slru_io.c
index 0862cd33e6c..2df0a1d0a76 100644
--- a/src/bin/pg_upgrade/slru_io.c
+++ b/src/bin/pg_upgrade/slru_io.c
@@ -121,7 +121,7 @@ SlruReadSwitchPageSlow(SlruSegState *state, uint64 pageno)
 		ssize_t		rc;
 
 		rc = pg_pread(state->fd,
-					  &state->buf.data + bytes_read,
+					  state->buf.data + bytes_read,
 					  BLCKSZ - bytes_read,
 					  offset);
 		if (rc < 0)
@@ -135,7 +135,7 @@ SlruReadSwitchPageSlow(SlruSegState *state, uint64 pageno)
 			/* unexpected EOF */
 			pg_log(PG_WARNING, "unexpected EOF reading file \"%s\" at offset %u, reading as zeros",
 				   state->fn, (unsigned int) offset);
-			memset(&state->buf.data + bytes_read, 0, BLCKSZ - bytes_read);
+			memset(state->buf.data + bytes_read, 0, BLCKSZ - bytes_read);
 			break;
 		}
 		bytes_read += rc;
