From 79ee8fe319e21e73407532ff5e9e84e988a7a8eb Mon Sep 17 00:00:00 2001
From: Yuhang Qiu <iamqyh@gmail.com>
Date: Fri, 4 Jul 2025 17:13:44 +0800
Subject: [PATCH] Change off in mdfd from uint32 to off_t

---
 src/backend/storage/smgr/md.c   | 2 +-
 src/backend/storage/smgr/smgr.c | 6 +++---
 src/include/storage/md.h        | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/backend/storage/smgr/md.c b/src/backend/storage/smgr/md.c
index 2ccb0faceb5..85e72e51cdc 100644
--- a/src/backend/storage/smgr/md.c
+++ b/src/backend/storage/smgr/md.c
@@ -1467,7 +1467,7 @@ mdimmedsync(SMgrRelation reln, ForkNumber forknum)
 }
 
 int
-mdfd(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, uint32 *off)
+mdfd(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, off_t *off)
 {
 	MdfdVec    *v = mdopenfork(reln, forknum, EXTENSION_FAIL);
 
diff --git a/src/backend/storage/smgr/smgr.c b/src/backend/storage/smgr/smgr.c
index bce37a36d51..15e605c7483 100644
--- a/src/backend/storage/smgr/smgr.c
+++ b/src/backend/storage/smgr/smgr.c
@@ -122,7 +122,7 @@ typedef struct f_smgr
 								  BlockNumber old_blocks, BlockNumber nblocks);
 	void		(*smgr_immedsync) (SMgrRelation reln, ForkNumber forknum);
 	void		(*smgr_registersync) (SMgrRelation reln, ForkNumber forknum);
-	int			(*smgr_fd) (SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, uint32 *off);
+	int			(*smgr_fd) (SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, off_t *off);
 } f_smgr;
 
 static const f_smgr smgrsw[] = {
@@ -977,7 +977,7 @@ smgrimmedsync(SMgrRelation reln, ForkNumber forknum)
  * process than where it was issued (e.g. in an IO worker).
  */
 static int
-smgrfd(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, uint32 *off)
+smgrfd(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, off_t *off)
 {
 	int			fd;
 
@@ -1058,7 +1058,7 @@ smgr_aio_reopen(PgAioHandle *ioh)
 	PgAioOpData *od = pgaio_io_get_op_data(ioh);
 	SMgrRelation reln;
 	ProcNumber	procno;
-	uint32		off;
+	off_t		off;
 
 	/*
 	 * The caller needs to prevent interrupts from being processed, otherwise
diff --git a/src/include/storage/md.h b/src/include/storage/md.h
index b563c27abf0..613a97721fa 100644
--- a/src/include/storage/md.h
+++ b/src/include/storage/md.h
@@ -52,7 +52,7 @@ extern void mdtruncate(SMgrRelation reln, ForkNumber forknum,
 					   BlockNumber curnblk, BlockNumber nblocks);
 extern void mdimmedsync(SMgrRelation reln, ForkNumber forknum);
 extern void mdregistersync(SMgrRelation reln, ForkNumber forknum);
-extern int	mdfd(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, uint32 *off);
+extern int	mdfd(SMgrRelation reln, ForkNumber forknum, BlockNumber blocknum, off_t *off);
 
 extern void ForgetDatabaseSyncRequests(Oid dbid);
 extern void DropRelationFiles(RelFileLocator *delrels, int ndelrels, bool isRedo);
-- 
2.39.3

