All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: cem@kernel.org, djwong@kernel.org
Cc: linux-xfs@vger.kernel.org
Subject: [PATCH 6/8] xfs_db: enable conversion of rt space units
Date: Sun, 31 Dec 2023 15:46:16 -0800	[thread overview]
Message-ID: <170405011099.1810817.7976228081932005210.stgit@frogsfrogsfrogs> (raw)
In-Reply-To: <170405011015.1810817.17512390006888048389.stgit@frogsfrogsfrogs>

From: Darrick J. Wong <djwong@kernel.org>

Teach the xfs_db convert function about rt extents, rt block numbers,
and how to compute offsets within the rt bitmap and summary files.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
 db/convert.c      |  232 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 man/man8/xfs_db.8 |   51 ++++++++++++
 2 files changed, 260 insertions(+), 23 deletions(-)


diff --git a/db/convert.c b/db/convert.c
index e1466057031..811bac00f71 100644
--- a/db/convert.c
+++ b/db/convert.c
@@ -26,6 +26,10 @@
 	 agino_to_bytes(XFS_INO_TO_AGINO(mp, (x))))
 #define	inoidx_to_bytes(x)	\
 	((uint64_t)(x) << mp->m_sb.sb_inodelog)
+#define rtblock_to_bytes(x)	\
+	((uint64_t)(x) << mp->m_sb.sb_blocklog)
+#define rtx_to_rtblock(x)	\
+	((uint64_t)(x) * mp->m_sb.sb_rextsize)
 
 typedef enum {
 	CT_NONE = -1,
@@ -40,11 +44,12 @@ typedef enum {
 	CT_INO,			/* xfs_ino_t */
 	CT_INOIDX,		/* index of inode in fsblock */
 	CT_INOOFF,		/* byte offset in inode */
+	CT_RTBLOCK,		/* realtime block */
+	CT_RTX,			/* realtime extent */
 	NCTS
 } ctype_t;
 
 typedef struct ctydesc {
-	ctype_t		ctype;
 	int		allowed;
 	const char	**names;
 } ctydesc_t;
@@ -61,12 +66,16 @@ typedef union {
 	xfs_ino_t	ino;
 	int		inoidx;
 	int		inooff;
+	xfs_rtblock_t	rtblock;
+	xfs_rtblock_t	rtx;
 } cval_t;
 
 static uint64_t		bytevalue(ctype_t ctype, cval_t *val);
+static int		rtconvert_f(int argc, char **argv);
 static int		convert_f(int argc, char **argv);
 static int		getvalue(char *s, ctype_t ctype, cval_t *val);
-static ctype_t		lookupcty(char *ctyname);
+static ctype_t		lookupcty(const struct ctydesc *descs,
+				  const char *ctyname);
 
 static const char	*agblock_names[] = { "agblock", "agbno", NULL };
 static const char	*agino_names[] = { "agino", "aginode", NULL };
@@ -74,6 +83,8 @@ static const char	*agnumber_names[] = { "agnumber", "agno", NULL };
 static const char	*bboff_names[] = { "bboff", "daddroff", NULL };
 static const char	*blkoff_names[] = { "blkoff", "fsboff", "agboff",
 					    NULL };
+static const char	*rtblkoff_names[] = { "blkoff", "rtboff",
+					    NULL };
 static const char	*byte_names[] = { "byte", "fsbyte", NULL };
 static const char	*daddr_names[] = { "daddr", "bb", NULL };
 static const char	*fsblock_names[] = { "fsblock", "fsb", "fsbno", NULL };
@@ -81,30 +92,91 @@ static const char	*ino_names[] = { "ino", "inode", NULL };
 static const char	*inoidx_names[] = { "inoidx", "offset", NULL };
 static const char	*inooff_names[] = { "inooff", "inodeoff", NULL };
 
+static const char	*rtblock_names[] = { "rtblock", "rtb", "rtbno", NULL };
+static const char	*rtx_names[] = { "rtx", "rtextent", NULL };
+
 static const ctydesc_t	ctydescs[NCTS] = {
-	{ CT_AGBLOCK, M(AGNUMBER)|M(BBOFF)|M(BLKOFF)|M(INOIDX)|M(INOOFF),
-	  agblock_names },
-	{ CT_AGINO, M(AGNUMBER)|M(INOOFF), agino_names },
-	{ CT_AGNUMBER,
-	  M(AGBLOCK)|M(AGINO)|M(BBOFF)|M(BLKOFF)|M(INOIDX)|M(INOOFF),
-	  agnumber_names },
-	{ CT_BBOFF, M(AGBLOCK)|M(AGNUMBER)|M(DADDR)|M(FSBLOCK), bboff_names },
-	{ CT_BLKOFF, M(AGBLOCK)|M(AGNUMBER)|M(FSBLOCK), blkoff_names },
-	{ CT_BYTE, 0, byte_names },
-	{ CT_DADDR, M(BBOFF), daddr_names },
-	{ CT_FSBLOCK, M(BBOFF)|M(BLKOFF)|M(INOIDX), fsblock_names },
-	{ CT_INO, M(INOOFF), ino_names },
-	{ CT_INOIDX, M(AGBLOCK)|M(AGNUMBER)|M(FSBLOCK)|M(INOOFF),
-	  inoidx_names },
-	{ CT_INOOFF,
-	  M(AGBLOCK)|M(AGINO)|M(AGNUMBER)|M(FSBLOCK)|M(INO)|M(INOIDX),
-	  inooff_names },
+	[CT_AGBLOCK] = {
+		.allowed = M(AGNUMBER)|M(BBOFF)|M(BLKOFF)|M(INOIDX)|M(INOOFF),
+		.names   = agblock_names,
+	},
+	[CT_AGINO] = {
+		.allowed = M(AGNUMBER)|M(INOOFF),
+		.names   = agino_names,
+	},
+	[CT_AGNUMBER] = {
+		.allowed = M(AGBLOCK)|M(AGINO)|M(BBOFF)|M(BLKOFF)|M(INOIDX)|M(INOOFF),
+		.names   = agnumber_names,
+	},
+	[CT_BBOFF] = {
+		.allowed = M(AGBLOCK)|M(AGNUMBER)|M(DADDR)|M(FSBLOCK),
+		.names   = bboff_names,
+	},
+	[CT_BLKOFF] = {
+		.allowed = M(AGBLOCK)|M(AGNUMBER)|M(FSBLOCK),
+		.names   = blkoff_names,
+	},
+	[CT_BYTE] = {
+		.allowed = 0,
+		.names   = byte_names,
+	},
+	[CT_DADDR] = {
+		.allowed = M(BBOFF),
+		.names   = daddr_names,
+	},
+	[CT_FSBLOCK] = {
+		.allowed = M(BBOFF)|M(BLKOFF)|M(INOIDX),
+		.names   = fsblock_names,
+	},
+	[CT_INO] = {
+		.allowed = M(INOOFF),
+		.names   = ino_names,
+	},
+	[CT_INOIDX] = {
+		.allowed = M(AGBLOCK)|M(AGNUMBER)|M(FSBLOCK)|M(INOOFF),
+		.names   = inoidx_names,
+	},
+	[CT_INOOFF] = {
+		.allowed = M(AGBLOCK)|M(AGINO)|M(AGNUMBER)|M(FSBLOCK)|M(INO)|M(INOIDX),
+		.names   = inooff_names,
+	},
+};
+
+static const ctydesc_t	ctydescs_rt[NCTS] = {
+	[CT_BBOFF] = {
+		.allowed = M(DADDR)|M(RTBLOCK),
+		.names   = bboff_names,
+	},
+	[CT_BLKOFF] = {
+		.allowed = M(RTBLOCK),
+		.names   = rtblkoff_names,
+	},
+	[CT_BYTE] = {
+		.allowed = 0,
+		.names   = byte_names,
+	},
+	[CT_DADDR] = {
+		.allowed = M(BBOFF),
+		.names   = daddr_names,
+	},
+	[CT_RTBLOCK] = {
+		.allowed = M(BBOFF)|M(BLKOFF),
+		.names   = rtblock_names,
+	},
+	[CT_RTX] = {
+		.allowed = M(BBOFF)|M(BLKOFF),
+		.names   = rtx_names,
+	},
 };
 
 static const cmdinfo_t	convert_cmd =
 	{ "convert", NULL, convert_f, 3, 9, 0, "type num [type num]... type",
 	  "convert from one address form to another", NULL };
 
+static const cmdinfo_t	rtconvert_cmd =
+	{ "rtconvert", NULL, rtconvert_f, 3, 9, 0, "type num [type num]... type",
+	  "convert from one realtime address form to another", NULL };
+
 static uint64_t
 bytevalue(ctype_t ctype, cval_t *val)
 {
@@ -131,6 +203,10 @@ bytevalue(ctype_t ctype, cval_t *val)
 		return inoidx_to_bytes(val->inoidx);
 	case CT_INOOFF:
 		return (uint64_t)val->inooff;
+	case CT_RTBLOCK:
+		return rtblock_to_bytes(val->rtblock);
+	case CT_RTX:
+		return rtblock_to_bytes(rtx_to_rtblock(val->rtx));
 	case CT_NONE:
 	case NCTS:
 		break;
@@ -159,13 +235,13 @@ convert_f(int argc, char **argv)
 			 "arguments\n"), argc);
 		return 0;
 	}
-	if ((wtype = lookupcty(argv[argc - 1])) == CT_NONE) {
+	if ((wtype = lookupcty(ctydescs, argv[argc - 1])) == CT_NONE) {
 		dbprintf(_("unknown conversion type %s\n"), argv[argc - 1]);
 		return 0;
 	}
 
 	for (i = mask = conmask = 0; i < (argc - 1) / 2; i++) {
-		c = lookupcty(argv[i * 2]);
+		c = lookupcty(ctydescs, argv[i * 2]);
 		if (c == CT_NONE) {
 			dbprintf(_("unknown conversion type %s\n"), argv[i * 2]);
 			return 0;
@@ -230,6 +306,107 @@ convert_f(int argc, char **argv)
 	case CT_INOOFF:
 		v &= mp->m_sb.sb_inodesize - 1;
 		break;
+	case CT_RTBLOCK:
+	case CT_RTX:
+		/* shouldn't get here */
+		ASSERT(0);
+		break;
+	case CT_NONE:
+	case NCTS:
+		/* NOTREACHED */
+		break;
+	}
+	dbprintf("0x%llx (%llu)\n", v, v);
+	return 0;
+}
+
+static inline xfs_rtblock_t
+xfs_daddr_to_rtb(
+	struct xfs_mount	*mp,
+	xfs_daddr_t		daddr)
+{
+	return daddr >> mp->m_blkbb_log;
+}
+
+static int
+rtconvert_f(int argc, char **argv)
+{
+	ctype_t		c;
+	int		conmask;
+	cval_t		cvals[NCTS] = {};
+	int		i;
+	int		mask;
+	uint64_t	v;
+	ctype_t		wtype;
+
+	/* move past the "rtconvert" command */
+	argc--;
+	argv++;
+
+	if ((argc % 2) != 1) {
+		dbprintf(_("bad argument count %d to rtconvert, expected 3,5,7,9 "
+			 "arguments\n"), argc);
+		return 0;
+	}
+	if ((wtype = lookupcty(ctydescs_rt, argv[argc - 1])) == CT_NONE) {
+		dbprintf(_("unknown conversion type %s\n"), argv[argc - 1]);
+		return 0;
+	}
+
+	for (i = mask = conmask = 0; i < (argc - 1) / 2; i++) {
+		c = lookupcty(ctydescs_rt, argv[i * 2]);
+		if (c == CT_NONE) {
+			dbprintf(_("unknown conversion type %s\n"), argv[i * 2]);
+			return 0;
+		}
+		if (c == wtype) {
+			dbprintf(_("result type same as argument\n"));
+			return 0;
+		}
+		if (conmask & (1 << c)) {
+			dbprintf(_("conflicting conversion type %s\n"),
+				argv[i * 2]);
+			return 0;
+		}
+		if (!getvalue(argv[i * 2 + 1], c, &cvals[c]))
+			return 0;
+		mask |= 1 << c;
+		conmask |= ~ctydescs_rt[c].allowed;
+	}
+	v = 0;
+	for (c = (ctype_t)0; c < NCTS; c++) {
+		if (!(mask & (1 << c)))
+			continue;
+		v += bytevalue(c, &cvals[c]);
+	}
+	switch (wtype) {
+	case CT_BBOFF:
+		v &= BBMASK;
+		break;
+	case CT_BLKOFF:
+		v &= mp->m_blockmask;
+		break;
+	case CT_BYTE:
+		break;
+	case CT_DADDR:
+		v >>= BBSHIFT;
+		break;
+	case CT_RTBLOCK:
+		v = xfs_daddr_to_rtb(mp, v >> BBSHIFT);
+		break;
+	case CT_RTX:
+		v = xfs_daddr_to_rtb(mp, v >> BBSHIFT) / mp->m_sb.sb_rextsize;
+		break;
+	case CT_AGBLOCK:
+	case CT_AGINO:
+	case CT_AGNUMBER:
+	case CT_FSBLOCK:
+	case CT_INO:
+	case CT_INOIDX:
+	case CT_INOOFF:
+		/* shouldn't get here */
+		ASSERT(0);
+		break;
 	case CT_NONE:
 	case NCTS:
 		/* NOTREACHED */
@@ -243,6 +420,7 @@ void
 convert_init(void)
 {
 	add_command(&convert_cmd);
+	add_command(&rtconvert_cmd);
 }
 
 static int
@@ -290,6 +468,12 @@ getvalue(char *s, ctype_t ctype, cval_t *val)
 	case CT_INOOFF:
 		val->inooff = (int)v;
 		break;
+	case CT_RTBLOCK:
+		val->rtblock = (xfs_rtblock_t)v;
+		break;
+	case CT_RTX:
+		val->rtx = (xfs_rtblock_t)v;
+		break;
 	case CT_NONE:
 	case NCTS:
 		/* NOTREACHED */
@@ -299,13 +483,15 @@ getvalue(char *s, ctype_t ctype, cval_t *val)
 }
 
 static ctype_t
-lookupcty(char *ctyname)
+lookupcty(
+	const struct ctydesc	*descs,
+	const char		*ctyname)
 {
 	ctype_t		cty;
 	const char	**name;
 
 	for (cty = (ctype_t)0; cty < NCTS; cty++) {
-		for (name = ctydescs[cty].names; *name; name++) {
+		for (name = descs[cty].names; name && *name; name++) {
 			if (strcmp(ctyname, *name) == 0)
 				return cty;
 		}
diff --git a/man/man8/xfs_db.8 b/man/man8/xfs_db.8
index 6fa72acb313..dc0bbfc9ac9 100644
--- a/man/man8/xfs_db.8
+++ b/man/man8/xfs_db.8
@@ -1052,6 +1052,57 @@ Show position ring (if no
 argument is given), or move to a specific entry in the position ring given by
 .IR index .
 .TP
+.BI "rtconvert " "type number" " [" "type number" "] ... " type
+Convert from one address form to another for realtime section addresses.
+The known
+.IR type s,
+with alternate names, are:
+.RS 1.0i
+.PD 0
+.HP
+.B bboff
+or
+.B daddroff
+(byte offset in a
+.BR daddr )
+.HP
+.B blkoff
+or
+.B fsboff or
+.B rtboff
+(byte offset in a
+.B rtblock
+or
+.BR rtextent )
+.HP
+.B byte
+or
+.B fsbyte
+(byte address in filesystem)
+.HP
+.B daddr
+or
+.B bb
+(disk address, 512-byte blocks)
+.HP
+.B rtblock
+or
+.B rtb
+or
+.B rtbno
+(realtime filesystem block, see the
+.B fsblock
+command)
+.HP
+.B rtx
+or
+.B rtextent
+(realtime extent)
+.PD
+.RE
+.IP
+Only conversions that "make sense" are allowed.
+.TP
 .BI "sb [" agno ]
 Set current address to SB header in allocation group
 .IR agno .


  parent reply	other threads:[~2023-12-31 23:46 UTC|newest]

Thread overview: 632+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-31 18:23 [NYE PATCHRIVER 3/4] xfs: modernize the realtime volume Darrick J. Wong
2023-12-31 19:34 ` [PATCHSET v2.0 01/15] xfs: hoist inode operations to libxfs Darrick J. Wong
2023-12-31 21:01   ` [PATCH 01/21] xfs: move inode copy-on-write predicates to xfs_inode.[ch] Darrick J. Wong
2023-12-31 21:01   ` [PATCH 02/21] xfs: hoist extent size helpers to libxfs Darrick J. Wong
2023-12-31 21:01   ` [PATCH 03/21] xfs: hoist inode flag conversion functions " Darrick J. Wong
2023-12-31 21:01   ` [PATCH 04/21] xfs: hoist project id get/set " Darrick J. Wong
2023-12-31 21:02   ` [PATCH 05/21] xfs: pack icreate initialization parameters into a separate structure Darrick J. Wong
2023-12-31 21:02   ` [PATCH 06/21] xfs: implement atime updates in xfs_trans_ichgtime Darrick J. Wong
2023-12-31 21:02   ` [PATCH 07/21] xfs: use xfs_trans_ichgtime to set times when allocating inode Darrick J. Wong
2023-12-31 21:02   ` [PATCH 08/21] xfs: split new inode creation into two pieces Darrick J. Wong
2023-12-31 21:03   ` [PATCH 09/21] xfs: hoist new inode initialization functions to libxfs Darrick J. Wong
2023-12-31 21:03   ` [PATCH 10/21] xfs: push xfs_icreate_args creation out of xfs_create* Darrick J. Wong
2023-12-31 21:03   ` [PATCH 11/21] xfs: wrap inode creation dqalloc calls Darrick J. Wong
2023-12-31 21:03   ` [PATCH 12/21] xfs: hoist xfs_iunlink to libxfs Darrick J. Wong
2023-12-31 21:04   ` [PATCH 13/21] xfs: hoist xfs_{bump,drop}link " Darrick J. Wong
2023-12-31 21:04   ` [PATCH 14/21] xfs: create libxfs helper to link a new inode into a directory Darrick J. Wong
2023-12-31 21:04   ` [PATCH 15/21] xfs: create libxfs helper to link an existing " Darrick J. Wong
2023-12-31 21:04   ` [PATCH 16/21] xfs: hoist inode free function to libxfs Darrick J. Wong
2023-12-31 21:05   ` [PATCH 17/21] xfs: create libxfs helper to remove an existing inode/name from a directory Darrick J. Wong
2023-12-31 21:05   ` [PATCH 18/21] xfs: create libxfs helper to exchange two directory entries Darrick J. Wong
2023-12-31 21:05   ` [PATCH 19/21] xfs: create libxfs helper to rename " Darrick J. Wong
2023-12-31 21:05   ` [PATCH 20/21] xfs: move dirent update hooks to xfs_dir2.c Darrick J. Wong
2023-12-31 21:06   ` [PATCH 21/21] xfs: get rid of trivial rename helpers Darrick J. Wong
2023-12-31 19:35 ` [PATCHSET v2.0 02/15] xfs: metadata inode directories Darrick J. Wong
2023-12-31 21:06   ` [PATCH 01/32] xfs: don't use the incore struct xfs_sb for offsets into struct xfs_dsb Darrick J. Wong
2023-12-31 21:06   ` [PATCH 02/32] xfs: create imeta abstractions to get and set metadata inodes Darrick J. Wong
2023-12-31 21:07   ` [PATCH 03/32] xfs: create transaction reservations for metadata inode operations Darrick J. Wong
2023-12-31 21:07   ` [PATCH 04/32] xfs: refactor the v4 group/project inode pointer switch Darrick J. Wong
2023-12-31 21:07   ` [PATCH 05/32] xfs: convert quota file creation to use imeta methods Darrick J. Wong
2023-12-31 21:07   ` [PATCH 06/32] xfs: iget for metadata inodes Darrick J. Wong
2023-12-31 21:08   ` [PATCH 07/32] xfs: define the on-disk format for the metadir feature Darrick J. Wong
2023-12-31 21:08   ` [PATCH 08/32] xfs: update imeta transaction reservations for metadir Darrick J. Wong
2023-12-31 21:08   ` [PATCH 09/32] xfs: load metadata directory root at mount time Darrick J. Wong
2023-12-31 21:08   ` [PATCH 10/32] xfs: convert metadata inode lookup keys to use paths Darrick J. Wong
2023-12-31 21:09   ` [PATCH 11/32] xfs: enforce metadata inode flag Darrick J. Wong
2023-12-31 21:09   ` [PATCH 12/32] xfs: allow deletion of metadata directory files Darrick J. Wong
2023-12-31 21:09   ` [PATCH 13/32] xfs: read and write metadata inode directory Darrick J. Wong
2023-12-31 21:09   ` [PATCH 14/32] xfs: ensure metadata directory paths exist before creating files Darrick J. Wong
2023-12-31 21:10   ` [PATCH 15/32] xfs: disable the agi rotor for metadata inodes Darrick J. Wong
2023-12-31 21:10   ` [PATCH 16/32] xfs: hide metadata inodes from everyone because they are special Darrick J. Wong
2023-12-31 21:10   ` [PATCH 17/32] xfs: advertise metadata directory feature Darrick J. Wong
2023-12-31 21:10   ` [PATCH 18/32] xfs: allow bulkstat to return metadata directories Darrick J. Wong
2023-12-31 21:11   ` [PATCH 19/32] xfs: enable creation of dynamically allocated metadir path structures Darrick J. Wong
2023-12-31 21:11   ` [PATCH 20/32] xfs: don't count metadata directory files to quota Darrick J. Wong
2023-12-31 21:11   ` [PATCH 21/32] xfs: adjust xfs_bmap_add_attrfork for metadir Darrick J. Wong
2023-12-31 21:11   ` [PATCH 22/32] xfs: record health problems with the metadata directory Darrick J. Wong
2023-12-31 21:12   ` [PATCH 23/32] xfs: do not count metadata directory files when doing online quotacheck Darrick J. Wong
2023-12-31 21:12   ` [PATCH 24/32] xfs: scrub shouldn't tag metadata files with attr forks if metadir and parent pointers are on Darrick J. Wong
2023-12-31 21:12   ` [PATCH 25/32] xfs: scrub metadata directories Darrick J. Wong
2023-12-31 21:13   ` [PATCH 26/32] xfs: teach nlink scrubber to deal with metadata directory roots Darrick J. Wong
2023-12-31 21:13   ` [PATCH 27/32] xfs: don't check secondary super inode pointers when metadir enabled Darrick J. Wong
2023-12-31 21:13   ` [PATCH 28/32] xfs: move repair temporary files to the metadata directory tree Darrick J. Wong
2023-12-31 21:13   ` [PATCH 29/32] xfs: check metadata directory file path connectivity Darrick J. Wong
2023-12-31 21:14   ` [PATCH 30/32] xfs: repair " Darrick J. Wong
2023-12-31 21:14   ` [PATCH 31/32] xfs: fix up repair functions for metadata directory roots Darrick J. Wong
2023-12-31 21:14   ` [PATCH 32/32] xfs: enable metadata directory feature Darrick J. Wong
2023-12-31 19:35 ` [PATCHSET v2.0 03/15] xfs: refactor realtime meta inode locking Darrick J. Wong
2023-12-31 21:14   ` [PATCH 1/4] xfs: refactor realtime scrubbing context management Darrick J. Wong
2023-12-31 21:15   ` [PATCH 2/4] xfs: use separate lock classes for realtime metadata inode ILOCKs Darrick J. Wong
2023-12-31 21:15   ` [PATCH 3/4] xfs: refactor realtime inode locking Darrick J. Wong
2023-12-31 21:15   ` [PATCH 4/4] xfs: remove XFS_ILOCK_RT* Darrick J. Wong
2023-12-31 19:35 ` [PATCHSET v2.0 04/15] xfsprogs: shard the realtime section Darrick J. Wong
2023-12-31 21:15   ` [PATCH 01/24] xfs: create incore realtime group structures Darrick J. Wong
2023-12-31 21:16   ` [PATCH 02/24] xfs: define the format of rt groups Darrick J. Wong
2023-12-31 21:16   ` [PATCH 03/24] xfs: reduce rt summary file levels for rtgroups filesystems Darrick J. Wong
2023-12-31 21:16   ` [PATCH 04/24] xfs: check the realtime superblock at mount time Darrick J. Wong
2023-12-31 21:16   ` [PATCH 05/24] xfs: update primary realtime super every time we update the primary fs super Darrick J. Wong
2023-12-31 21:17   ` [PATCH 06/24] xfs: write secondary realtime superblocks to disk Darrick J. Wong
2023-12-31 21:17   ` [PATCH 07/24] xfs: grow the realtime section when realtime groups are enabled Darrick J. Wong
2023-12-31 21:17   ` [PATCH 08/24] xfs: always update secondary rt supers when we update secondary fs supers Darrick J. Wong
2023-12-31 21:17   ` [PATCH 09/24] xfs: export realtime group geometry via XFS_FSOP_GEOM Darrick J. Wong
2023-12-31 21:18   ` [PATCH 10/24] xfs: check that rtblock extents do not overlap with the rt group metadata Darrick J. Wong
2023-12-31 21:18   ` [PATCH 11/24] xfs: add frextents to the lazysbcounters when rtgroups enabled Darrick J. Wong
2023-12-31 21:18   ` [PATCH 12/24] xfs: record rt group superblock errors in the health system Darrick J. Wong
2023-12-31 21:19   ` [PATCH 13/24] xfs: define locking primitives for realtime groups Darrick J. Wong
2023-12-31 21:19   ` [PATCH 14/24] xfs: export the geometry of realtime groups to userspace Darrick J. Wong
2023-12-31 21:19   ` [PATCH 15/24] xfs: add block headers to realtime bitmap blocks Darrick J. Wong
2023-12-31 21:19   ` [PATCH 16/24] xfs: encode the rtbitmap in little endian format Darrick J. Wong
2023-12-31 21:20   ` [PATCH 17/24] xfs: add block headers to realtime summary blocks Darrick J. Wong
2023-12-31 21:20   ` [PATCH 18/24] xfs: encode the rtsummary in big endian format Darrick J. Wong
2023-12-31 21:20   ` [PATCH 19/24] xfs: store rtgroup information with a bmap intent Darrick J. Wong
2023-12-31 21:20   ` [PATCH 20/24] xfs: use an incore rtgroup rotor for rtpick Darrick J. Wong
2023-12-31 21:21   ` [PATCH 21/24] xfs: scrub the realtime group superblock Darrick J. Wong
2023-12-31 21:21   ` [PATCH 22/24] xfs: repair secondary realtime group superblocks Darrick J. Wong
2023-12-31 21:21   ` [PATCH 23/24] xfs: scrub each rtgroup's portion of the rtbitmap separately Darrick J. Wong
2023-12-31 21:21   ` [PATCH 24/24] xfs: enable realtime group feature Darrick J. Wong
2023-12-31 19:35 ` [PATCHSET v2.0 05/15] xfs: enable FITRIM for the realtime section Darrick J. Wong
2023-12-31 21:22   ` [PATCH 1/1] xfs: enable FITRIM on the realtime device Darrick J. Wong
2023-12-31 19:36 ` [PATCHSET v2.0 06/15] xfs: refactor btrees to support records in inode root Darrick J. Wong
2023-12-31 21:22   ` [PATCH 01/14] xfs: replace shouty XFS_BM{BT,DR} macros Darrick J. Wong
2023-12-31 21:22   ` [PATCH 02/14] xfs: refactor the allocation and freeing of incore inode fork btree roots Darrick J. Wong
2023-12-31 21:22   ` [PATCH 03/14] xfs: refactor creation of bmap " Darrick J. Wong
2023-12-31 21:23   ` [PATCH 04/14] xfs: fix a sloppy memory handling bug in xfs_iroot_realloc Darrick J. Wong
2023-12-31 21:23   ` [PATCH 05/14] xfs: hoist the code that moves the incore inode fork broot memory Darrick J. Wong
2023-12-31 21:23   ` [PATCH 06/14] xfs: move the zero records logic into xfs_bmap_broot_space_calc Darrick J. Wong
2023-12-31 21:23   ` [PATCH 07/14] xfs: rearrange xfs_iroot_realloc a bit Darrick J. Wong
2023-12-31 21:24   ` [PATCH 08/14] xfs: standardize the btree maxrecs function parameters Darrick J. Wong
2023-12-31 21:24   ` [PATCH 09/14] xfs: generalize the btree root reallocation function Darrick J. Wong
2023-12-31 21:24   ` [PATCH 10/14] xfs: support leaves in the incore btree root block in xfs_iroot_realloc Darrick J. Wong
2023-12-31 21:24   ` [PATCH 11/14] xfs: hoist the node iroot update code out of xfs_btree_new_iroot Darrick J. Wong
2023-12-31 21:25   ` [PATCH 12/14] xfs: hoist the node iroot update code out of xfs_btree_kill_iroot Darrick J. Wong
2023-12-31 21:25   ` [PATCH 13/14] xfs: support storing records in the inode core root Darrick J. Wong
2023-12-31 21:25   ` [PATCH 14/14] xfs: update btree keys correctly when _insrec splits an inode root block Darrick J. Wong
2023-12-31 19:36 ` [PATCHSET v2.0 07/15] xfs: enable in-core block reservation for rt metadata Darrick J. Wong
2023-12-31 21:26   ` [PATCH 1/2] xfs: simplify xfs_ag_resv_free signature Darrick J. Wong
2023-12-31 21:26   ` [PATCH 2/2] xfs: allow inode-based btrees to reserve space in the data device Darrick J. Wong
2023-12-31 19:36 ` [PATCHSET v2.0 08/15] xfs: extent free log intent cleanups Darrick J. Wong
2023-12-31 21:26   ` [PATCH 1/9] xfs: clean up extent free log intent item tracepoint callsites Darrick J. Wong
2023-12-31 21:26   ` [PATCH 2/9] xfs: convert "skip_discard" to a proper flags bitset Darrick J. Wong
2023-12-31 21:27   ` [PATCH 3/9] xfs: pass the fsbno to xfs_perag_intent_get Darrick J. Wong
2023-12-31 21:27   ` [PATCH 4/9] xfs: add a xefi_entry helper Darrick J. Wong
2023-12-31 21:27   ` [PATCH 5/9] xfs: reuse xfs_extent_free_cancel_item Darrick J. Wong
2023-12-31 21:27   ` [PATCH 6/9] xfs: factor out a xfs_efd_add_extent helper Darrick J. Wong
2023-12-31 21:28   ` [PATCH 7/9] xfs: remove duplicate asserts in xfs_defer_extent_free Darrick J. Wong
2023-12-31 21:28   ` [PATCH 8/9] xfs: remove xfs_defer_agfl_block Darrick J. Wong
2023-12-31 21:28   ` [PATCH 9/9] xfs: move xfs_extent_free_defer_add to xfs_extfree_item.c Darrick J. Wong
2023-12-31 19:36 ` [PATCHSET v2.0 09/15] xfs: widen EFI format to support rt Darrick J. Wong
2023-12-31 21:28   ` [PATCH 1/2] xfs: support logging EFIs for realtime extents Darrick J. Wong
2023-12-31 21:29   ` [PATCH 2/2] xfs: support error injection when freeing rt extents Darrick J. Wong
2023-12-31 19:37 ` [PATCHSET v2.0 10/15] xfs: rmap log intent cleanups Darrick J. Wong
2023-12-31 21:29   ` [PATCH 01/10] xfs: attach rtgroup objects to btree cursors Darrick J. Wong
2023-12-31 21:29   ` [PATCH 02/10] xfs: give rmap btree cursor error tracepoints their own class Darrick J. Wong
2023-12-31 21:29   ` [PATCH 03/10] xfs: prepare rmap btree tracepoints for widening Darrick J. Wong
2023-12-31 21:30   ` [PATCH 04/10] xfs: clean up rmap log intent item tracepoint callsites Darrick J. Wong
2023-12-31 21:30   ` [PATCH 05/10] xfs: remove xfs_trans_set_rmap_flags Darrick J. Wong
2023-12-31 21:30   ` [PATCH 06/10] xfs: add a ri_entry helper Darrick J. Wong
2023-12-31 21:31   ` [PATCH 07/10] xfs: reuse xfs_rmap_update_cancel_item Darrick J. Wong
2023-12-31 21:31   ` [PATCH 08/10] xfs: don't bother calling xfs_rmap_finish_one_cleanup in xfs_rmap_finish_one Darrick J. Wong
2023-12-31 21:31   ` [PATCH 09/10] xfs: simplify usage of the rcur local variable " Darrick J. Wong
2023-12-31 21:31   ` [PATCH 10/10] xfs: move xfs_rmap_update_defer_add to xfs_rmap_item.c Darrick J. Wong
2023-12-31 19:37 ` [PATCHSET v2.0 11/15] xfs: realtime reverse-mapping support Darrick J. Wong
2023-12-31 21:32   ` [PATCH 01/39] xfs: prepare rmap btree cursor tracepoints for realtime Darrick J. Wong
2023-12-31 21:32   ` [PATCH 02/39] xfs: simplify the xfs_rmap_{alloc,free}_extent calling conventions Darrick J. Wong
2023-12-31 21:32   ` [PATCH 03/39] xfs: introduce realtime rmap btree definitions Darrick J. Wong
2023-12-31 21:32   ` [PATCH 04/39] xfs: define the on-disk realtime rmap btree format Darrick J. Wong
2023-12-31 21:33   ` [PATCH 05/39] xfs: realtime rmap btree transaction reservations Darrick J. Wong
2023-12-31 21:33   ` [PATCH 06/39] xfs: add realtime rmap btree operations Darrick J. Wong
2023-12-31 21:33   ` [PATCH 07/39] xfs: prepare rmap functions to deal with rtrmapbt Darrick J. Wong
2023-12-31 21:33   ` [PATCH 08/39] xfs: add a realtime flag to the rmap update log redo items Darrick J. Wong
2023-12-31 21:34   ` [PATCH 09/39] xfs: support recovering rmap intent items targetting realtime extents Darrick J. Wong
2023-12-31 21:34   ` [PATCH 10/39] xfs: add realtime rmap btree block detection to log recovery Darrick J. Wong
2023-12-31 21:34   ` [PATCH 11/39] xfs: add realtime reverse map inode to metadata directory Darrick J. Wong
2023-12-31 21:34   ` [PATCH 12/39] xfs: add metadata reservations for realtime rmap btrees Darrick J. Wong
2023-12-31 21:35   ` [PATCH 13/39] xfs: wire up a new inode fork type for the realtime rmap Darrick J. Wong
2023-12-31 21:35   ` [PATCH 14/39] xfs: allow inodes with zero extents but nonzero nblocks Darrick J. Wong
2023-12-31 21:35   ` [PATCH 15/39] xfs: use realtime EFI to free extents when realtime rmap is enabled Darrick J. Wong
2023-12-31 21:35   ` [PATCH 16/39] xfs: wire up rmap map and unmap to the realtime rmapbt Darrick J. Wong
2023-12-31 21:36   ` [PATCH 17/39] xfs: create routine to allocate and initialize a realtime rmap btree inode Darrick J. Wong
2023-12-31 21:36   ` [PATCH 18/39] xfs: rearrange xfs_fsmap.c a little bit Darrick J. Wong
2023-12-31 21:36   ` [PATCH 19/39] xfs: wire up getfsmap to the realtime reverse mapping btree Darrick J. Wong
2023-12-31 21:37   ` [PATCH 20/39] xfs: check that the rtrmapbt maxlevels doesn't increase when growing fs Darrick J. Wong
2023-12-31 21:37   ` [PATCH 21/39] xfs: add realtime rmap btree when adding rt volume Darrick J. Wong
2023-12-31 21:37   ` [PATCH 22/39] xfs: report realtime rmap btree corruption errors to the health system Darrick J. Wong
2023-12-31 21:37   ` [PATCH 23/39] xfs: fix scrub tracepoints when inode-rooted btrees are involved Darrick J. Wong
2023-12-31 21:38   ` [PATCH 24/39] xfs: allow queued realtime intents to drain before scrubbing Darrick J. Wong
2023-12-31 21:38   ` [PATCH 25/39] xfs: scrub the realtime rmapbt Darrick J. Wong
2023-12-31 21:38   ` [PATCH 26/39] xfs: cross-reference realtime bitmap to realtime rmapbt scrubber Darrick J. Wong
2023-12-31 21:38   ` [PATCH 27/39] xfs: cross-reference the realtime rmapbt Darrick J. Wong
2023-12-31 21:39   ` [PATCH 28/39] xfs: scan rt rmap when we're doing an intense rmap check of bmbt mappings Darrick J. Wong
2023-12-31 21:39   ` [PATCH 29/39] xfs: scrub the metadir path of rt rmap btree files Darrick J. Wong
2023-12-31 21:39   ` [PATCH 30/39] xfs: walk the rt reverse mapping tree when rebuilding rmap Darrick J. Wong
2023-12-31 21:39   ` [PATCH 31/39] xfs: online repair of realtime file bmaps Darrick J. Wong
2023-12-31 21:40   ` [PATCH 32/39] xfs: repair inodes that have realtime extents Darrick J. Wong
2023-12-31 21:40   ` [PATCH 33/39] xfs: repair rmap btree inodes Darrick J. Wong
2023-12-31 21:40   ` [PATCH 34/39] xfs: online repair of realtime bitmaps for a realtime group Darrick J. Wong
2023-12-31 21:40   ` [PATCH 35/39] xfs: support repairing metadata btrees rooted in metadir inodes Darrick J. Wong
2023-12-31 21:41   ` [PATCH 36/39] xfs: online repair of the realtime rmap btree Darrick J. Wong
2023-12-31 21:41   ` [PATCH 37/39] xfs: create a shadow rmap btree during realtime rmap repair Darrick J. Wong
2023-12-31 21:41   ` [PATCH 38/39] xfs: hook live realtime rmap operations during a repair operation Darrick J. Wong
2023-12-31 21:41   ` [PATCH 39/39] xfs: enable realtime rmap btree Darrick J. Wong
2023-12-31 19:37 ` [PATCHSET v2.0 12/15] xfs: refcount log intent cleanups Darrick J. Wong
2023-12-31 21:42   ` [PATCH 01/10] xfs: give refcount btree cursor error tracepoints their own class Darrick J. Wong
2023-12-31 21:42   ` [PATCH 02/10] xfs: create specialized classes for refcount tracepoints Darrick J. Wong
2023-12-31 21:42   ` [PATCH 03/10] xfs: prepare refcount btree tracepoints for widening Darrick J. Wong
2023-12-31 21:43   ` [PATCH 04/10] xfs: clean up refcount log intent item tracepoint callsites Darrick J. Wong
2023-12-31 21:43   ` [PATCH 05/10] xfs: remove xfs_trans_set_refcount_flags Darrick J. Wong
2023-12-31 21:43   ` [PATCH 06/10] xfs: add a ci_entry helper Darrick J. Wong
2023-12-31 21:43   ` [PATCH 07/10] xfs: reuse xfs_refcount_update_cancel_item Darrick J. Wong
2023-12-31 21:44   ` [PATCH 08/10] xfs: don't bother calling xfs_refcount_finish_one_cleanup in xfs_refcount_finish_one Darrick J. Wong
2023-12-31 21:44   ` [PATCH 09/10] xfs: simplify usage of the rcur local variable " Darrick J. Wong
2023-12-31 21:44   ` [PATCH 10/10] xfs: move xfs_refcount_update_defer_add to xfs_refcount_item.c Darrick J. Wong
2023-12-31 19:37 ` [PATCHSET v2.0 13/15] xfs: reflink on the realtime device Darrick J. Wong
2023-12-31 21:44   ` [PATCH 01/44] xfs: prepare refcount btree cursor tracepoints for realtime Darrick J. Wong
2023-12-31 21:45   ` [PATCH 02/44] xfs: introduce realtime refcount btree definitions Darrick J. Wong
2023-12-31 21:45   ` [PATCH 03/44] xfs: namespace the maximum length/refcount symbols Darrick J. Wong
2023-12-31 21:45   ` [PATCH 04/44] xfs: define the on-disk realtime refcount btree format Darrick J. Wong
2023-12-31 21:45   ` [PATCH 05/44] xfs: realtime refcount btree transaction reservations Darrick J. Wong
2023-12-31 21:46   ` [PATCH 06/44] xfs: add realtime refcount btree operations Darrick J. Wong
2023-12-31 21:46   ` [PATCH 07/44] xfs: prepare refcount functions to deal with rtrefcountbt Darrick J. Wong
2023-12-31 21:46   ` [PATCH 08/44] xfs: add a realtime flag to the refcount update log redo items Darrick J. Wong
2023-12-31 21:46   ` [PATCH 09/44] xfs: support recovering refcount intent items targetting realtime extents Darrick J. Wong
2023-12-31 21:47   ` [PATCH 10/44] xfs: add realtime refcount btree block detection to log recovery Darrick J. Wong
2023-12-31 21:47   ` [PATCH 11/44] xfs: add realtime refcount btree inode to metadata directory Darrick J. Wong
2023-12-31 21:47   ` [PATCH 12/44] xfs: add metadata reservations for realtime refcount btree Darrick J. Wong
2023-12-31 21:47   ` [PATCH 13/44] xfs: wire up a new inode fork type for the realtime refcount Darrick J. Wong
2023-12-31 21:48   ` [PATCH 14/44] xfs: wire up realtime refcount btree cursors Darrick J. Wong
2023-12-31 21:48   ` [PATCH 15/44] xfs: create routine to allocate and initialize a realtime refcount btree inode Darrick J. Wong
2023-12-31 21:48   ` [PATCH 16/44] xfs: update rmap to allow cow staging extents in the rt rmap Darrick J. Wong
2023-12-31 21:49   ` [PATCH 17/44] xfs: compute rtrmap btree max levels when reflink enabled Darrick J. Wong
2023-12-31 21:49   ` [PATCH 18/44] xfs: refactor reflink quota updates Darrick J. Wong
2023-12-31 21:49   ` [PATCH 19/44] xfs: enable CoW for realtime data Darrick J. Wong
2023-12-31 21:49   ` [PATCH 20/44] xfs: enable sharing of realtime file blocks Darrick J. Wong
2023-12-31 21:50   ` [PATCH 21/44] xfs: allow inodes to have the realtime and reflink flags Darrick J. Wong
2023-12-31 21:50   ` [PATCH 22/44] xfs: refcover CoW leftovers in the realtime volume Darrick J. Wong
2023-12-31 21:50   ` [PATCH 23/44] xfs: fix xfs_get_extsz_hint behavior with realtime alwayscow files Darrick J. Wong
2023-12-31 21:50   ` [PATCH 24/44] xfs: apply rt extent alignment constraints to CoW extsize hint Darrick J. Wong
2023-12-31 21:51   ` [PATCH 25/44] xfs: enable extent size hints for CoW operations Darrick J. Wong
2023-12-31 21:51   ` [PATCH 26/44] xfs: check that the rtrefcount maxlevels doesn't increase when growing fs Darrick J. Wong
2023-12-31 21:51   ` [PATCH 27/44] xfs: add realtime refcount btree when adding rt volume Darrick J. Wong
2023-12-31 21:51   ` [PATCH 28/44] xfs: report realtime refcount btree corruption errors to the health system Darrick J. Wong
2023-12-31 21:52   ` [PATCH 29/44] xfs: scrub the realtime refcount btree Darrick J. Wong
2023-12-31 21:52   ` [PATCH 30/44] xfs: cross-reference checks with the rt " Darrick J. Wong
2023-12-31 21:52   ` [PATCH 31/44] xfs: allow overlapping rtrmapbt records for shared data extents Darrick J. Wong
2023-12-31 21:52   ` [PATCH 32/44] xfs: check reference counts of gaps between rt refcount records Darrick J. Wong
2023-12-31 21:53   ` [PATCH 33/44] xfs: allow dquot rt block count to exceed rt blocks on reflink fs Darrick J. Wong
2023-12-31 21:53   ` [PATCH 34/44] xfs: detect and repair misaligned rtinherit directory cowextsize hints Darrick J. Wong
2023-12-31 21:53   ` [PATCH 35/44] xfs: scrub the metadir path of rt refcount btree files Darrick J. Wong
2023-12-31 21:53   ` [PATCH 36/44] xfs: don't flag quota rt block usage on rtreflink filesystems Darrick J. Wong
2023-12-31 21:54   ` [PATCH 37/44] xfs: check new rtbitmap records against rt refcount btree Darrick J. Wong
2023-12-31 21:54   ` [PATCH 38/44] xfs: walk the rt reference count tree when rebuilding rmap Darrick J. Wong
2023-12-31 21:54   ` [PATCH 39/44] xfs: capture realtime CoW staging extents when rebuilding rt rmapbt Darrick J. Wong
2023-12-31 21:54   ` [PATCH 40/44] xfs: online repair of the realtime refcount btree Darrick J. Wong
2023-12-31 21:55   ` [PATCH 41/44] xfs: repair inodes that have a refcount btree in the data fork Darrick J. Wong
2023-12-31 21:55   ` [PATCH 42/44] xfs: check for shared rt extents when rebuilding rt file's " Darrick J. Wong
2023-12-31 21:55   ` [PATCH 43/44] xfs: fix CoW forks for realtime files Darrick J. Wong
2023-12-31 21:56   ` [PATCH 44/44] xfs: enable realtime reflink Darrick J. Wong
2023-12-31 19:38 ` [PATCHSET v2.0 14/15] xfs: reflink with large realtime extents Darrick J. Wong
2023-12-31 21:56   ` [PATCH 1/9] vfs: explicitly pass the block size to the remap prep function Darrick J. Wong
2023-12-31 21:56   ` [PATCH 2/9] xfs: enable CoW when rt extent size is larger than 1 block Darrick J. Wong
2023-12-31 21:56   ` [PATCH 3/9] xfs: forcibly convert unwritten blocks within an rt extent before sharing Darrick J. Wong
2023-12-31 21:57   ` [PATCH 4/9] xfs: add some tracepoints for writeback Darrick J. Wong
2023-12-31 21:57   ` [PATCH 5/9] xfs: extend writeback requests to handle rt cow correctly Darrick J. Wong
2023-12-31 21:57   ` [PATCH 6/9] xfs: enable extent size hints for CoW when rtextsize > 1 Darrick J. Wong
2023-12-31 21:57   ` [PATCH 7/9] xfs: allow reflink on the rt volume when extent size is larger than 1 rt block Darrick J. Wong
2023-12-31 21:58   ` [PATCH 8/9] xfs: fix integer overflow when validating extent size hints Darrick J. Wong
2023-12-31 21:58   ` [PATCH 9/9] xfs: support realtime reflink with an extent size that isn't a power of 2 Darrick J. Wong
2023-12-31 19:38 ` [PATCHSET v2.0 15/15] xfs: enable quota for realtime voluems Darrick J. Wong
2023-12-31 21:58   ` [PATCH 1/6] xfs: attach dquots to rt metadata files when starting quota Darrick J. Wong
2023-12-31 21:58   ` [PATCH 2/6] xfs: fix chown with rt quota Darrick J. Wong
2023-12-31 21:59   ` [PATCH 3/6] xfs: fix rt growfs quota accounting Darrick J. Wong
2023-12-31 21:59   ` [PATCH 4/6] xfs: advertise realtime quota support in the xqm stat files Darrick J. Wong
2023-12-31 21:59   ` [PATCH 5/6] xfs: report realtime block quota limits on realtime directories Darrick J. Wong
2023-12-31 21:59   ` [PATCH 6/6] xfs: enable realtime quota again Darrick J. Wong
2023-12-31 19:51 ` [PATCHSET v2.0 01/17] xfsprogs: hoist inode operations to libxfs Darrick J. Wong
2023-12-31 23:22   ` [PATCH 01/28] xfs: hoist extent size helpers " Darrick J. Wong
2023-12-31 23:22   ` [PATCH 02/28] xfs: hoist inode flag conversion functions " Darrick J. Wong
2023-12-31 23:23   ` [PATCH 03/28] xfs: hoist project id get/set " Darrick J. Wong
2023-12-31 23:23   ` [PATCH 04/28] libxfs: put all the inode functions in a single file Darrick J. Wong
2023-12-31 23:23   ` [PATCH 05/28] libxfs: pass IGET flags through to xfs_iread Darrick J. Wong
2023-12-31 23:23   ` [PATCH 06/28] xfs: pack icreate initialization parameters into a separate structure Darrick J. Wong
2023-12-31 23:24   ` [PATCH 07/28] xfs: implement atime updates in xfs_trans_ichgtime Darrick J. Wong
2023-12-31 23:24   ` [PATCH 08/28] libxfs: rearrange libxfs_trans_ichgtime call when creating inodes Darrick J. Wong
2023-12-31 23:24   ` [PATCH 09/28] libxfs: set access time when creating files Darrick J. Wong
2023-12-31 23:24   ` [PATCH 10/28] libxfs: when creating a file in a directory, set the project id based on the parent Darrick J. Wong
2023-12-31 23:25   ` [PATCH 11/28] libxfs: pass flags2 from parent to child when creating files Darrick J. Wong
2023-12-31 23:25   ` [PATCH 12/28] xfs: split new inode creation into two pieces Darrick J. Wong
2023-12-31 23:25   ` [PATCH 13/28] libxfs: backport inode init code from the kernel Darrick J. Wong
2023-12-31 23:25   ` [PATCH 14/28] libxfs: remove libxfs_dir_ialloc Darrick J. Wong
2023-12-31 23:26   ` [PATCH 15/28] libxfs: implement get_random_u32 Darrick J. Wong
2023-12-31 23:26   ` [PATCH 16/28] xfs: hoist new inode initialization functions to libxfs Darrick J. Wong
2023-12-31 23:26   ` [PATCH 17/28] xfs: hoist xfs_iunlink " Darrick J. Wong
2023-12-31 23:26   ` [PATCH 18/28] xfs: hoist xfs_{bump,drop}link " Darrick J. Wong
2023-12-31 23:27   ` [PATCH 19/28] xfs: create libxfs helper to link a new inode into a directory Darrick J. Wong
2023-12-31 23:27   ` [PATCH 20/28] xfs: create libxfs helper to link an existing " Darrick J. Wong
2023-12-31 23:27   ` [PATCH 21/28] xfs: hoist inode free function to libxfs Darrick J. Wong
2023-12-31 23:28   ` [PATCH 22/28] xfs: create libxfs helper to remove an existing inode/name from a directory Darrick J. Wong
2023-12-31 23:28   ` [PATCH 23/28] xfs: create libxfs helper to exchange two directory entries Darrick J. Wong
2023-12-31 23:28   ` [PATCH 24/28] xfs: create libxfs helper to rename " Darrick J. Wong
2023-12-31 23:28   ` [PATCH 25/28] xfs: move dirent update hooks to xfs_dir2.c Darrick J. Wong
2023-12-31 23:29   ` [PATCH 26/28] xfs_db: port the iunlink command to use the libxfs iunlink function Darrick J. Wong
2023-12-31 23:29   ` [PATCH 27/28] xfs_repair: use library functions to reset root/rbm/rsum inodes Darrick J. Wong
2023-12-31 23:29   ` [PATCH 28/28] xfs_repair: use library functions for orphanage creation Darrick J. Wong
2023-12-31 19:52 ` [PATCHSET v2.0 02/17] xfsprogs: metadata inode directories Darrick J. Wong
2023-12-31 23:29   ` [PATCH 01/58] xfs: don't use the incore struct xfs_sb for offsets into struct xfs_dsb Darrick J. Wong
2023-12-31 23:30   ` [PATCH 02/58] xfs: create imeta abstractions to get and set metadata inodes Darrick J. Wong
2023-12-31 23:30   ` [PATCH 03/58] xfs: create transaction reservations for metadata inode operations Darrick J. Wong
2023-12-31 23:30   ` [PATCH 04/58] mkfs: clean up the rtinit() function Darrick J. Wong
2023-12-31 23:30   ` [PATCH 05/58] libxfs: convert all users to libxfs_imeta_create Darrick J. Wong
2023-12-31 23:31   ` [PATCH 06/58] mkfs: break up the rest of the rtinit() function Darrick J. Wong
2023-12-31 23:31   ` [PATCH 07/58] xfs: iget for metadata inodes Darrick J. Wong
2023-12-31 23:31   ` [PATCH 08/58] xfs: define the on-disk format for the metadir feature Darrick J. Wong
2023-12-31 23:31   ` [PATCH 09/58] xfs: update imeta transaction reservations for metadir Darrick J. Wong
2023-12-31 23:32   ` [PATCH 10/58] xfs: load metadata directory root at mount time Darrick J. Wong
2023-12-31 23:32   ` [PATCH 11/58] xfs: convert metadata inode lookup keys to use paths Darrick J. Wong
2023-12-31 23:32   ` [PATCH 12/58] xfs: enforce metadata inode flag Darrick J. Wong
2023-12-31 23:32   ` [PATCH 13/58] xfs: allow deletion of metadata directory files Darrick J. Wong
2023-12-31 23:33   ` [PATCH 14/58] xfs: read and write metadata inode directory Darrick J. Wong
2023-12-31 23:33   ` [PATCH 15/58] xfs: ensure metadata directory paths exist before creating files Darrick J. Wong
2023-12-31 23:33   ` [PATCH 16/58] xfs: disable the agi rotor for metadata inodes Darrick J. Wong
2023-12-31 23:34   ` [PATCH 17/58] xfs: advertise metadata directory feature Darrick J. Wong
2023-12-31 23:34   ` [PATCH 18/58] xfs: allow bulkstat to return metadata directories Darrick J. Wong
2023-12-31 23:34   ` [PATCH 19/58] xfs: enable creation of dynamically allocated metadir path structures Darrick J. Wong
2023-12-31 23:34   ` [PATCH 20/58] xfs: adjust xfs_bmap_add_attrfork for metadir Darrick J. Wong
2023-12-31 23:35   ` [PATCH 21/58] xfs: record health problems with the metadata directory Darrick J. Wong
2023-12-31 23:35   ` [PATCH 22/58] xfs: check metadata directory file path connectivity Darrick J. Wong
2023-12-31 23:35   ` [PATCH 23/58] libfrog: report metadata directories in the geometry report Darrick J. Wong
2023-12-31 23:35   ` [PATCH 24/58] libfrog: allow METADIR in xfrog_bulkstat_single5 Darrick J. Wong
2023-12-31 23:36   ` [PATCH 25/58] xfs_io: support scrubbing metadata directory paths Darrick J. Wong
2023-12-31 23:36   ` [PATCH 26/58] xfs_db: basic xfs_check support for metadir Darrick J. Wong
2023-12-31 23:36   ` [PATCH 27/58] xfs_db: report metadir support for version command Darrick J. Wong
2023-12-31 23:36   ` [PATCH 28/58] xfs_db: don't obfuscate metadata directories and attributes Darrick J. Wong
2023-12-31 23:37   ` [PATCH 29/58] xfs_db: support metadata directories in the path command Darrick J. Wong
2023-12-31 23:37   ` [PATCH 30/58] xfs_db: mask superblock fields when metadir feature is enabled Darrick J. Wong
2023-12-31 23:37   ` [PATCH 31/58] xfs_io: support the bulkstat metadata directory flag Darrick J. Wong
2023-12-31 23:37   ` [PATCH 32/58] xfs_io: support scrubbing metadata directory paths Darrick J. Wong
2023-12-31 23:38   ` [PATCH 33/58] xfs_spaceman: report health of metadir inodes too Darrick J. Wong
2023-12-31 23:38   ` [PATCH 34/58] xfs_scrub: scan metadata directories during phase 3 Darrick J. Wong
2023-12-31 23:38   ` [PATCH 35/58] xfs_scrub: re-run metafile scrubbers during phase 5 Darrick J. Wong
2023-12-31 23:38   ` [PATCH 36/58] xfs_repair: don't zero the incore secondary super when zeroing Darrick J. Wong
2023-12-31 23:39   ` [PATCH 37/58] xfs_repair: refactor metadata inode tagging Darrick J. Wong
2023-12-31 23:39   ` [PATCH 38/58] xfs_repair: reject regular directory dirents that point to metadata fieles Darrick J. Wong
2023-12-31 23:39   ` [PATCH 39/58] xfs_repair: dont check metadata directory dirent inumbers Darrick J. Wong
2023-12-31 23:40   ` [PATCH 40/58] xfs_repair: refactor fixing dotdot Darrick J. Wong
2023-12-31 23:40   ` [PATCH 41/58] xfs_repair: refactor marking of metadata inodes Darrick J. Wong
2023-12-31 23:40   ` [PATCH 42/58] xfs_repair: refactor root directory initialization Darrick J. Wong
2023-12-31 23:40   ` [PATCH 43/58] xfs_repair: refactor grabbing realtime metadata inodes Darrick J. Wong
2023-12-31 23:41   ` [PATCH 44/58] xfs_repair: check metadata inode flag Darrick J. Wong
2023-12-31 23:41   ` [PATCH 45/58] xfs_repair: rebuild the metadata directory Darrick J. Wong
2023-12-31 23:41   ` [PATCH 46/58] xfs_repair: don't let metadata and regular files mix Darrick J. Wong
2023-12-31 23:41   ` [PATCH 47/58] xfs_repair: update incore metadata state whenever we create new files Darrick J. Wong
2023-12-31 23:42   ` [PATCH 48/58] xfs_repair: pass private data pointer to scan_lbtree Darrick J. Wong
2023-12-31 23:42   ` [PATCH 49/58] xfs_repair: mark space used by metadata files Darrick J. Wong
2023-12-31 23:42   ` [PATCH 50/58] xfs_repair: adjust keep_fsinos to handle metadata directories Darrick J. Wong
2023-12-31 23:42   ` [PATCH 51/58] xfs_repair: metadata dirs are never plausible root dirs Darrick J. Wong
2023-12-31 23:43   ` [PATCH 52/58] xfs_repair: reattach quota inodes to metadata directory Darrick J. Wong
2023-12-31 23:43   ` [PATCH 53/58] xfs_repair: drop all the metadata directory files during pass 4 Darrick J. Wong
2023-12-31 23:43   ` [PATCH 54/58] xfs_repair: truncate and unmark orphaned metadata inodes Darrick J. Wong
2023-12-31 23:43   ` [PATCH 55/58] xfs_repair: do not count metadata directory files when doing quotacheck Darrick J. Wong
2023-12-31 23:44   ` [PATCH 56/58] xfs_repair: allow sysadmins to add metadata directories Darrick J. Wong
2023-12-31 23:44   ` [PATCH 57/58] mkfs.xfs: enable " Darrick J. Wong
2023-12-31 23:44   ` [PATCH 58/58] mkfs: add a utility to generate protofiles Darrick J. Wong
2023-12-31 19:52 ` [PATCHSET v2.0 03/17] xfs_db: debug realtime geometry Darrick J. Wong
2023-12-31 23:44   ` [PATCH 1/8] xfs_db: support passing the realtime device to the debugger Darrick J. Wong
2023-12-31 23:45   ` [PATCH 2/8] xfs_db: report the realtime device when associated with each io cursor Darrick J. Wong
2023-12-31 23:45   ` [PATCH 3/8] xfs_db: make the daddr command target the realtime device Darrick J. Wong
2023-12-31 23:45   ` [PATCH 4/8] xfs_db: access realtime file blocks Darrick J. Wong
2023-12-31 23:46   ` [PATCH 5/8] xfs_db: access arbitrary realtime blocks and extents Darrick J. Wong
2023-12-31 23:46   ` Darrick J. Wong [this message]
2023-12-31 23:46   ` [PATCH 7/8] xfs_db: convert rtbitmap geometry Darrick J. Wong
2023-12-31 23:46   ` [PATCH 8/8] xfs_db: convert rtsummary geometry Darrick J. Wong
2023-12-31 19:52 ` [PATCHSET v2.0 04/17] xfs_metadump: support external devices Darrick J. Wong
2023-12-31 23:47   ` [PATCH 1/1] xfs_db: allow setting current address to log blocks Darrick J. Wong
2023-12-31 19:52 ` [PATCHSET v2.0 05/17] xfsprogs: refactor realtime meta inode locking Darrick J. Wong
2023-12-31 23:47   ` [PATCH 1/2] xfs: refactor realtime " Darrick J. Wong
2023-12-31 23:47   ` [PATCH 2/2] xfs: remove XFS_ILOCK_RT* Darrick J. Wong
2023-12-31 19:53 ` [PATCHSET v2.0 06/17] xfsprogs: shard the realtime section Darrick J. Wong
2023-12-27 13:00   ` [PATCH 48/52] xfs_scrub: trim realtime volumes too Darrick J. Wong
2023-12-27 13:00   ` [PATCH 49/52] xfs_scrub: use histograms to speed up phase 8 on the realtime volume Darrick J. Wong
2023-12-27 13:00   ` [PATCH 50/52] mkfs: add headers to realtime bitmap blocks Darrick J. Wong
2023-12-27 13:00   ` [PATCH 51/52] mkfs: add headers to realtime summary blocks Darrick J. Wong
2023-12-27 13:01   ` [PATCH 52/52] mkfs: format realtime groups Darrick J. Wong
2023-12-31 23:47   ` [PATCH 01/52] xfs: create incore realtime group structures Darrick J. Wong
2023-12-31 23:48   ` [PATCH 02/52] xfs: define the format of rt groups Darrick J. Wong
2023-12-31 23:48   ` [PATCH 03/52] xfs: reduce rt summary file levels for rtgroups filesystems Darrick J. Wong
2023-12-31 23:48   ` [PATCH 04/52] xfs: update primary realtime super every time we update the primary fs super Darrick J. Wong
2023-12-31 23:48   ` [PATCH 05/52] xfs: write secondary realtime superblocks to disk Darrick J. Wong
2023-12-31 23:49   ` [PATCH 06/52] xfs: grow the realtime section when realtime groups are enabled Darrick J. Wong
2023-12-31 23:49   ` [PATCH 07/52] xfs: export realtime group geometry via XFS_FSOP_GEOM Darrick J. Wong
2023-12-31 23:49   ` [PATCH 08/52] xfs: check that rtblock extents do not overlap with the rt group metadata Darrick J. Wong
2023-12-31 23:49   ` [PATCH 09/52] xfs: add frextents to the lazysbcounters when rtgroups enabled Darrick J. Wong
2023-12-31 23:50   ` [PATCH 10/52] xfs: record rt group superblock errors in the health system Darrick J. Wong
2023-12-31 23:50   ` [PATCH 11/52] xfs: define locking primitives for realtime groups Darrick J. Wong
2023-12-31 23:50   ` [PATCH 12/52] xfs: export the geometry of realtime groups to userspace Darrick J. Wong
2023-12-31 23:50   ` [PATCH 13/52] xfs: add block headers to realtime bitmap blocks Darrick J. Wong
2023-12-31 23:51   ` [PATCH 14/52] xfs: encode the rtbitmap in little endian format Darrick J. Wong
2023-12-31 23:51   ` [PATCH 15/52] xfs: add block headers to realtime summary blocks Darrick J. Wong
2023-12-31 23:51   ` [PATCH 16/52] xfs: encode the rtsummary in big endian format Darrick J. Wong
2023-12-31 23:51   ` [PATCH 17/52] xfs: store rtgroup information with a bmap intent Darrick J. Wong
2023-12-31 23:52   ` [PATCH 18/52] xfs: use an incore rtgroup rotor for rtpick Darrick J. Wong
2023-12-31 23:52   ` [PATCH 19/52] xfs: scrub the realtime group superblock Darrick J. Wong
2023-12-31 23:52   ` [PATCH 20/52] xfs: repair secondary realtime group superblocks Darrick J. Wong
2023-12-31 23:53   ` [PATCH 21/52] xfs: scrub each rtgroup's portion of the rtbitmap separately Darrick J. Wong
2023-12-31 23:53   ` [PATCH 22/52] libfrog: report rt groups in output Darrick J. Wong
2023-12-31 23:53   ` [PATCH 23/52] libxfs: implement some sanity checking for enormous rgcount Darrick J. Wong
2023-12-31 23:53   ` [PATCH 24/52] xfs_repair: support realtime groups Darrick J. Wong
2023-12-31 23:54   ` [PATCH 25/52] xfs_repair: improve rtbitmap discrepancy reporting Darrick J. Wong
2023-12-31 23:54   ` [PATCH 26/52] xfs_repair: repair rtbitmap block headers Darrick J. Wong
2023-12-31 23:54   ` [PATCH 27/52] xfs_repair: repair rtsummary " Darrick J. Wong
2023-12-31 23:54   ` [PATCH 28/52] xfs_repair: support adding rtgroups to a filesystem Darrick J. Wong
2023-12-31 23:55   ` [PATCH 29/52] xfs_db: listify the definition of enum typnm Darrick J. Wong
2023-12-31 23:55   ` [PATCH 30/52] xfs_db: support dumping realtime superblocks Darrick J. Wong
2023-12-31 23:55   ` [PATCH 31/52] xfs_db: support changing the label and uuid of rt superblocks Darrick J. Wong
2023-12-31 23:55   ` [PATCH 32/52] xfs_db: listify the definition of dbm_t Darrick J. Wong
2023-12-31 23:56   ` [PATCH 33/52] xfs_db: implement check for rt superblocks Darrick J. Wong
2023-12-31 23:56   ` [PATCH 34/52] xfs_db: enable conversion of rt space units Darrick J. Wong
2023-12-31 23:56   ` [PATCH 35/52] xfs_db: report rtgroups via version command Darrick J. Wong
2023-12-31 23:56   ` [PATCH 36/52] xfs_db: metadump realtime devices Darrick J. Wong
2023-12-31 23:57   ` [PATCH 37/52] xfs_db: dump rt bitmap blocks Darrick J. Wong
2023-12-31 23:57   ` [PATCH 38/52] xfs_db: dump rt summary blocks Darrick J. Wong
2023-12-31 23:57   ` [PATCH 39/52] xfs_mdrestore: restore rt group superblocks to realtime device Darrick J. Wong
2023-12-31 23:57   ` [PATCH 40/52] xfs_io: support scrubbing rtgroup metadata Darrick J. Wong
2023-12-31 23:58   ` [PATCH 41/52] xfs_io: add a command to display allocation group information Darrick J. Wong
2023-12-31 23:58   ` [PATCH 42/52] xfs_io: add a command to display realtime " Darrick J. Wong
2023-12-31 23:58   ` [PATCH 43/52] xfs_io: display rt group in verbose bmap output Darrick J. Wong
2023-12-31 23:59   ` [PATCH 44/52] xfs_io: display rt group in verbose fsmap output Darrick J. Wong
2023-12-31 23:59   ` [PATCH 45/52] xfs_spaceman: report on realtime group health Darrick J. Wong
2023-12-31 23:59   ` [PATCH 46/52] xfs_scrub: scrub realtime allocation group metadata Darrick J. Wong
2023-12-31 23:59   ` [PATCH 47/52] xfs_scrub: call GETFSMAP for each rt group in parallel Darrick J. Wong
2023-12-31 19:53 ` [PATCHSET v2.0 07/17] xfsprogs: refactor btrees to support records in inode root Darrick J. Wong
2023-12-27 13:01   ` [PATCH 01/14] xfs: replace shouty XFS_BM{BT,DR} macros Darrick J. Wong
2023-12-27 13:01   ` [PATCH 02/14] xfs: refactor the allocation and freeing of incore inode fork btree roots Darrick J. Wong
2023-12-27 13:01   ` [PATCH 03/14] xfs: refactor creation of bmap " Darrick J. Wong
2023-12-27 13:02   ` [PATCH 04/14] xfs: fix a sloppy memory handling bug in xfs_iroot_realloc Darrick J. Wong
2023-12-27 13:02   ` [PATCH 05/14] xfs: hoist the code that moves the incore inode fork broot memory Darrick J. Wong
2023-12-27 13:02   ` [PATCH 06/14] xfs: move the zero records logic into xfs_bmap_broot_space_calc Darrick J. Wong
2023-12-27 13:02   ` [PATCH 07/14] xfs: rearrange xfs_iroot_realloc a bit Darrick J. Wong
2023-12-27 13:03   ` [PATCH 08/14] xfs: standardize the btree maxrecs function parameters Darrick J. Wong
2023-12-27 13:03   ` [PATCH 09/14] xfs: generalize the btree root reallocation function Darrick J. Wong
2023-12-27 13:03   ` [PATCH 10/14] xfs: support leaves in the incore btree root block in xfs_iroot_realloc Darrick J. Wong
2023-12-27 13:03   ` [PATCH 11/14] xfs: hoist the node iroot update code out of xfs_btree_new_iroot Darrick J. Wong
2023-12-27 13:04   ` [PATCH 12/14] xfs: hoist the node iroot update code out of xfs_btree_kill_iroot Darrick J. Wong
2023-12-27 13:04   ` [PATCH 13/14] xfs: support storing records in the inode core root Darrick J. Wong
2023-12-27 13:04   ` [PATCH 14/14] xfs: update btree keys correctly when _insrec splits an inode root block Darrick J. Wong
2023-12-31 19:53 ` [PATCHSET v2.0 08/17] xfsprogs: enable in-core block reservation for rt metadata Darrick J. Wong
2023-12-27 13:05   ` [PATCH 1/2] xfs: simplify xfs_ag_resv_free signature Darrick J. Wong
2023-12-27 13:05   ` [PATCH 2/2] xfs: allow inode-based btrees to reserve space in the data device Darrick J. Wong
2023-12-31 19:54 ` [PATCHSET v2.0 09/17] xfsprogs: extent free log intent cleanups Darrick J. Wong
2023-12-27 13:05   ` [PATCH 1/8] xfs: clean up extent free log intent item tracepoint callsites Darrick J. Wong
2023-12-27 13:05   ` [PATCH 2/8] xfs: convert "skip_discard" to a proper flags bitset Darrick J. Wong
2023-12-27 13:06   ` [PATCH 3/8] xfs: pass the fsbno to xfs_perag_intent_get Darrick J. Wong
2023-12-27 13:06   ` [PATCH 4/8] xfs: add a xefi_entry helper Darrick J. Wong
2023-12-27 13:06   ` [PATCH 5/8] xfs: reuse xfs_extent_free_cancel_item Darrick J. Wong
2023-12-27 13:06   ` [PATCH 6/8] xfs: remove duplicate asserts in xfs_defer_extent_free Darrick J. Wong
2023-12-27 13:07   ` [PATCH 7/8] xfs: remove xfs_defer_agfl_block Darrick J. Wong
2023-12-27 13:07   ` [PATCH 8/8] xfs: move xfs_extent_free_defer_add to xfs_extfree_item.c Darrick J. Wong
2023-12-31 19:54 ` [PATCHSET v2.0 10/17] xfsprogs: widen EFI format to support rt Darrick J. Wong
2023-12-27 13:07   ` [PATCH 1/3] xfs: support logging EFIs for realtime extents Darrick J. Wong
2023-12-27 13:07   ` [PATCH 2/3] xfs: support error injection when freeing rt extents Darrick J. Wong
2023-12-27 13:08   ` [PATCH 3/3] xfs_logprint: report realtime EFIs Darrick J. Wong
2023-12-31 19:54 ` [PATCHSET v2.0 11/17] xfsprogs: rmap log intent cleanups Darrick J. Wong
2023-12-27 13:08   ` [PATCH 1/9] xfs: attach rtgroup objects to btree cursors Darrick J. Wong
2023-12-27 13:08   ` [PATCH 2/9] xfs: give rmap btree cursor error tracepoints their own class Darrick J. Wong
2023-12-27 13:08   ` [PATCH 3/9] xfs: prepare rmap btree tracepoints for widening Darrick J. Wong
2023-12-27 13:09   ` [PATCH 4/9] xfs: clean up rmap log intent item tracepoint callsites Darrick J. Wong
2023-12-27 13:09   ` [PATCH 5/9] xfs: add a ri_entry helper Darrick J. Wong
2023-12-27 13:09   ` [PATCH 6/9] xfs: reuse xfs_rmap_update_cancel_item Darrick J. Wong
2023-12-27 13:09   ` [PATCH 7/9] xfs: don't bother calling xfs_rmap_finish_one_cleanup in xfs_rmap_finish_one Darrick J. Wong
2023-12-27 13:10   ` [PATCH 8/9] xfs: simplify usage of the rcur local variable " Darrick J. Wong
2023-12-27 13:10   ` [PATCH 9/9] xfs: move xfs_rmap_update_defer_add to xfs_rmap_item.c Darrick J. Wong
2023-12-31 19:54 ` [PATCHSET v2.0 12/17] xfsprogs: realtime reverse-mapping support Darrick J. Wong
2023-12-27 13:10   ` [PATCH 01/47] xfs: simplify the xfs_rmap_{alloc,free}_extent calling conventions Darrick J. Wong
2023-12-27 13:11   ` [PATCH 02/47] xfs: introduce realtime rmap btree definitions Darrick J. Wong
2023-12-27 13:11   ` [PATCH 03/47] xfs: define the on-disk realtime rmap btree format Darrick J. Wong
2023-12-27 13:11   ` [PATCH 04/47] xfs: realtime rmap btree transaction reservations Darrick J. Wong
2023-12-27 13:11   ` [PATCH 05/47] xfs: add realtime rmap btree operations Darrick J. Wong
2023-12-27 13:12   ` [PATCH 06/47] xfs: prepare rmap functions to deal with rtrmapbt Darrick J. Wong
2023-12-27 13:12   ` [PATCH 07/47] xfs: add a realtime flag to the rmap update log redo items Darrick J. Wong
2023-12-27 13:12   ` [PATCH 08/47] xfs: add realtime reverse map inode to metadata directory Darrick J. Wong
2023-12-27 13:12   ` [PATCH 09/47] xfs: add metadata reservations for realtime rmap btrees Darrick J. Wong
2023-12-27 13:13   ` [PATCH 10/47] xfs: wire up a new inode fork type for the realtime rmap Darrick J. Wong
2023-12-27 13:13   ` [PATCH 11/47] xfs: allow inodes with zero extents but nonzero nblocks Darrick J. Wong
2023-12-27 13:13   ` [PATCH 12/47] xfs: use realtime EFI to free extents when realtime rmap is enabled Darrick J. Wong
2023-12-27 13:13   ` [PATCH 13/47] xfs: wire up rmap map and unmap to the realtime rmapbt Darrick J. Wong
2023-12-27 13:14   ` [PATCH 14/47] xfs: create routine to allocate and initialize a realtime rmap btree inode Darrick J. Wong
2023-12-27 13:14   ` [PATCH 15/47] xfs: report realtime rmap btree corruption errors to the health system Darrick J. Wong
2023-12-27 13:14   ` [PATCH 16/47] xfs: allow queued realtime intents to drain before scrubbing Darrick J. Wong
2023-12-27 13:14   ` [PATCH 17/47] xfs: scrub the realtime rmapbt Darrick J. Wong
2023-12-27 13:15   ` [PATCH 18/47] xfs: scrub the metadir path of rt rmap btree files Darrick J. Wong
2023-12-27 13:15   ` [PATCH 19/47] xfs: online repair of the realtime rmap btree Darrick J. Wong
2023-12-27 13:15   ` [PATCH 20/47] xfs: create a shadow rmap btree during realtime rmap repair Darrick J. Wong
2023-12-27 13:15   ` [PATCH 21/47] xfs: hook live realtime rmap operations during a repair operation Darrick J. Wong
2023-12-27 13:16   ` [PATCH 22/47] xfs_db: display the realtime rmap btree contents Darrick J. Wong
2023-12-27 13:16   ` [PATCH 23/47] xfs_db: support the realtime rmapbt Darrick J. Wong
2023-12-27 13:16   ` [PATCH 24/47] xfs_db: support rudimentary checks of the rtrmap btree Darrick J. Wong
2023-12-27 13:17   ` [PATCH 25/47] xfs_db: copy the realtime rmap btree Darrick J. Wong
2023-12-27 13:17   ` [PATCH 26/47] xfs_db: make fsmap query the realtime reverse mapping tree Darrick J. Wong
2023-12-27 13:17   ` [PATCH 27/47] xfs_io: support scrubbing rtgroup metadata paths Darrick J. Wong
2023-12-27 13:17   ` [PATCH 28/47] libfrog: enable scrubbng of the realtime rmap Darrick J. Wong
2023-12-27 13:18   ` [PATCH 29/47] xfs_scrub: check rtrmapbt metadata directory connections Darrick J. Wong
2023-12-27 13:18   ` [PATCH 30/47] xfs_scrub: retest metadata across scrub groups after a repair Darrick J. Wong
2023-12-27 13:18   ` [PATCH 31/47] xfs_spaceman: report health status of the realtime rmap btree Darrick J. Wong
2023-12-27 13:18   ` [PATCH 32/47] libxfs: dirty buffers should be marked uptodate too Darrick J. Wong
2023-12-27 13:19   ` [PATCH 33/47] xfs_repair: flag suspect long-format btree blocks Darrick J. Wong
2023-12-27 13:19   ` [PATCH 34/47] xfs_repair: use realtime rmap btree data to check block types Darrick J. Wong
2023-12-27 13:19   ` [PATCH 35/47] xfs_repair: create a new set of incore rmap information for rt groups Darrick J. Wong
2023-12-27 13:19   ` [PATCH 36/47] xfs_repair: collect relatime reverse-mapping data for refcount/rmap tree rebuilding Darrick J. Wong
2023-12-27 13:20   ` [PATCH 37/47] xfs_repair: refactor realtime inode check Darrick J. Wong
2023-12-27 13:20   ` [PATCH 38/47] xfs_repair: find and mark the rtrmapbt inodes Darrick J. Wong
2023-12-27 13:20   ` [PATCH 39/47] xfs_repair: check existing realtime rmapbt entries against observed rmaps Darrick J. Wong
2023-12-27 13:20   ` [PATCH 40/47] xfs_repair: always check realtime file mappings against incore info Darrick J. Wong
2023-12-27 13:21   ` [PATCH 41/47] xfs_repair: rebuild the realtime rmap btree Darrick J. Wong
2023-12-27 13:21   ` [PATCH 42/47] xfs_repair: check for global free space concerns with default btree slack levels Darrick J. Wong
2023-12-27 13:21   ` [PATCH 43/47] xfs_repair: rebuild the bmap btree for realtime files Darrick J. Wong
2023-12-27 13:21   ` [PATCH 44/47] xfs_repair: reserve per-AG space while rebuilding rt metadata Darrick J. Wong
2023-12-27 13:22   ` [PATCH 45/47] xfs_repair: allow sysadmins to add realtime reverse mapping indexes Darrick J. Wong
2023-12-27 13:22   ` [PATCH 46/47] xfs_logprint: report realtime RUIs Darrick J. Wong
2023-12-27 13:22   ` [PATCH 47/47] mkfs: create the realtime rmap inode Darrick J. Wong
2023-12-31 19:55 ` [PATCHSET v2.0 13/17] xfsprogs: file write utility refactoring Darrick J. Wong
2023-12-27 13:23   ` [PATCH 1/4] libxfs: resync libxfs_alloc_file_space interface with the kernel Darrick J. Wong
2023-12-27 13:23   ` [PATCH 2/4] mkfs: use libxfs_alloc_file_space for rtinit Darrick J. Wong
2023-12-27 13:23   ` [PATCH 3/4] xfs_repair: use libxfs_alloc_file_space to reallocate rt metadata Darrick J. Wong
2023-12-27 13:23   ` [PATCH 4/4] mkfs: use file write helper to populate files Darrick J. Wong
2023-12-31 19:55 ` [PATCHSET v2.0 14/17] xfsprogs: refcount log intent cleanups Darrick J. Wong
2023-12-27 13:24   ` [PATCH 1/9] xfs: give refcount btree cursor error tracepoints their own class Darrick J. Wong
2023-12-27 13:24   ` [PATCH 2/9] xfs: create specialized classes for refcount tracepoints Darrick J. Wong
2023-12-27 13:24   ` [PATCH 3/9] xfs: prepare refcount btree tracepoints for widening Darrick J. Wong
2023-12-27 13:24   ` [PATCH 4/9] xfs: clean up refcount log intent item tracepoint callsites Darrick J. Wong
2023-12-27 13:25   ` [PATCH 5/9] xfs: add a ci_entry helper Darrick J. Wong
2023-12-27 13:25   ` [PATCH 6/9] xfs: reuse xfs_refcount_update_cancel_item Darrick J. Wong
2023-12-27 13:25   ` [PATCH 7/9] xfs: don't bother calling xfs_refcount_finish_one_cleanup in xfs_refcount_finish_one Darrick J. Wong
2023-12-27 13:25   ` [PATCH 8/9] xfs: simplify usage of the rcur local variable " Darrick J. Wong
2023-12-27 13:26   ` [PATCH 9/9] xfs: move xfs_refcount_update_defer_add to xfs_refcount_item.c Darrick J. Wong
2023-12-31 19:55 ` [PATCHSET v2.0 15/17] xfsprogs: reflink on the realtime device Darrick J. Wong
2023-12-27 13:26   ` [PATCH 01/42] xfs: introduce realtime refcount btree definitions Darrick J. Wong
2023-12-27 13:26   ` [PATCH 02/42] xfs: namespace the maximum length/refcount symbols Darrick J. Wong
2023-12-27 13:26   ` [PATCH 03/42] xfs: define the on-disk realtime refcount btree format Darrick J. Wong
2023-12-27 13:27   ` [PATCH 04/42] xfs: realtime refcount btree transaction reservations Darrick J. Wong
2023-12-27 13:27   ` [PATCH 05/42] xfs: add realtime refcount btree operations Darrick J. Wong
2023-12-27 13:27   ` [PATCH 06/42] xfs: prepare refcount functions to deal with rtrefcountbt Darrick J. Wong
2023-12-27 13:27   ` [PATCH 07/42] xfs: add a realtime flag to the refcount update log redo items Darrick J. Wong
2023-12-27 13:28   ` [PATCH 08/42] xfs: add realtime refcount btree inode to metadata directory Darrick J. Wong
2023-12-27 13:28   ` [PATCH 09/42] xfs: add metadata reservations for realtime refcount btree Darrick J. Wong
2023-12-27 13:28   ` [PATCH 10/42] xfs: wire up a new inode fork type for the realtime refcount Darrick J. Wong
2023-12-27 13:29   ` [PATCH 11/42] xfs: wire up realtime refcount btree cursors Darrick J. Wong
2023-12-27 13:29   ` [PATCH 12/42] xfs: create routine to allocate and initialize a realtime refcount btree inode Darrick J. Wong
2023-12-27 13:29   ` [PATCH 13/42] xfs: update rmap to allow cow staging extents in the rt rmap Darrick J. Wong
2023-12-27 13:29   ` [PATCH 14/42] xfs: compute rtrmap btree max levels when reflink enabled Darrick J. Wong
2023-12-27 13:30   ` [PATCH 15/42] xfs: allow inodes to have the realtime and reflink flags Darrick J. Wong
2023-12-27 13:30   ` [PATCH 16/42] xfs: refcover CoW leftovers in the realtime volume Darrick J. Wong
2023-12-27 13:30   ` [PATCH 17/42] xfs: fix xfs_get_extsz_hint behavior with realtime alwayscow files Darrick J. Wong
2023-12-27 13:30   ` [PATCH 18/42] xfs: apply rt extent alignment constraints to CoW extsize hint Darrick J. Wong
2023-12-27 13:31   ` [PATCH 19/42] xfs: enable extent size hints for CoW operations Darrick J. Wong
2023-12-27 13:31   ` [PATCH 20/42] xfs: report realtime refcount btree corruption errors to the health system Darrick J. Wong
2023-12-27 13:31   ` [PATCH 21/42] xfs: scrub the realtime refcount btree Darrick J. Wong
2023-12-27 13:31   ` [PATCH 22/42] xfs: scrub the metadir path of rt refcount btree files Darrick J. Wong
2023-12-27 13:32   ` [PATCH 23/42] libfrog: enable scrubbing of the realtime refcount data Darrick J. Wong
2023-12-27 13:32   ` [PATCH 24/42] xfs_db: display the realtime refcount btree contents Darrick J. Wong
2023-12-27 13:32   ` [PATCH 25/42] xfs_db: support the realtime refcountbt Darrick J. Wong
2023-12-27 13:32   ` [PATCH 26/42] xfs_db: widen block type mask to 64 bits Darrick J. Wong
2023-12-27 13:33   ` [PATCH 27/42] xfs_db: support rudimentary checks of the rtrefcount btree Darrick J. Wong
2023-12-27 13:33   ` [PATCH 28/42] xfs_db: copy the realtime refcount btree Darrick J. Wong
2023-12-27 13:33   ` [PATCH 29/42] xfs_spaceman: report health of " Darrick J. Wong
2023-12-27 13:33   ` [PATCH 30/42] xfs_repair: allow CoW staging extents in the realtime rmap records Darrick J. Wong
2023-12-27 13:34   ` [PATCH 31/42] xfs_repair: use realtime refcount btree data to check block types Darrick J. Wong
2023-12-27 13:34   ` [PATCH 32/42] xfs_repair: find and mark the rtrefcountbt inode Darrick J. Wong
2023-12-27 13:34   ` [PATCH 33/42] xfs_repair: compute refcount data for the realtime groups Darrick J. Wong
2023-12-27 13:35   ` [PATCH 34/42] xfs_repair: check existing realtime refcountbt entries against observed refcounts Darrick J. Wong
2023-12-27 13:35   ` [PATCH 35/42] xfs_repair: reject unwritten shared extents Darrick J. Wong
2023-12-27 13:35   ` [PATCH 36/42] xfs_repair: rebuild the realtime refcount btree Darrick J. Wong
2023-12-27 13:35   ` [PATCH 37/42] xfs_repair: allow realtime files to have the reflink flag set Darrick J. Wong
2023-12-27 13:36   ` [PATCH 38/42] xfs_repair: validate CoW extent size hint on rtinherit directories Darrick J. Wong
2023-12-27 13:36   ` [PATCH 39/42] xfs_repair: allow sysadmins to add realtime reflink Darrick J. Wong
2023-12-27 13:36   ` [PATCH 40/42] xfs_logprint: report realtime CUIs Darrick J. Wong
2023-12-27 13:36   ` [PATCH 41/42] mkfs: validate CoW extent size hint when rtinherit is set Darrick J. Wong
2023-12-27 13:37   ` [PATCH 42/42] mkfs: enable reflink on the realtime device Darrick J. Wong
2023-12-31 19:55 ` [PATCHSET v2.0 16/17] xfsprogs: reflink with large realtime extents Darrick J. Wong
2023-12-27 13:37   ` [PATCH 1/3] xfs: enable extent size hints for CoW when rtextsize > 1 Darrick J. Wong
2023-12-27 13:37   ` [PATCH 2/3] xfs: fix integer overflow when validating extent size hints Darrick J. Wong
2023-12-27 13:37   ` [PATCH 3/3] mkfs: enable reflink with realtime extent sizes > 1 Darrick J. Wong
2023-12-31 19:56 ` [PATCHSET v2.0 17/17] xfsprogs: enable quota for realtime voluems Darrick J. Wong
2023-12-27 13:38   ` [PATCH 1/1] xfs_quota: report warning limits for realtime space quotas Darrick J. Wong
2023-12-31 20:00 ` [PATCHSET v2.0 1/9] fstests: test XFS metadata directories Darrick J. Wong
2023-12-27 13:50   ` [PATCH 01/11] xfs/122: fix metadirino Darrick J. Wong
2023-12-27 13:50   ` [PATCH 02/11] various: fix finding metadata inode numbers when metadir is enabled Darrick J. Wong
2023-12-27 13:50   ` [PATCH 03/11] xfs/{030,033,178}: forcibly disable metadata directory trees Darrick J. Wong
2023-12-27 13:50   ` [PATCH 04/11] common/repair: patch up repair sb inode value complaints Darrick J. Wong
2023-12-27 13:51   ` [PATCH 05/11] xfs/206: update for metadata directory support Darrick J. Wong
2023-12-27 13:51   ` [PATCH 06/11] xfs/{050,144,153,299,330}: update quota reports to handle metadir trees Darrick J. Wong
2023-12-27 13:51   ` [PATCH 07/11] xfs/856: add metadir upgrade to test matrix Darrick J. Wong
2023-12-27 13:51   ` [PATCH 08/11] xfs/509: adjust inumbers accounting for metadata directories Darrick J. Wong
2023-12-27 13:52   ` [PATCH 09/11] xfs: create fuzz tests " Darrick J. Wong
2023-12-27 13:52   ` [PATCH 10/11] xfs: baseline golden output for metadata directory fuzz tests Darrick J. Wong
2023-12-27 13:52   ` [PATCH 11/11] xfs: test metapath repairs Darrick J. Wong
2023-12-31 20:00 ` [PATCHSET v2.0 2/9] xfsprogs: shard the realtime section Darrick J. Wong
2023-12-27 13:53   ` [PATCH 01/17] common/populate: refactor caching of metadumps to a helper Darrick J. Wong
2023-12-27 13:53   ` [PATCH 02/17] common/xfs: wipe external logs during mdrestore operations Darrick J. Wong
2023-12-27 13:53   ` [PATCH 03/17] common/ext4: reformat " Darrick J. Wong
2023-12-27 13:53   ` [PATCH 04/17] xfs: use metadump v2 format by default Darrick J. Wong
2023-12-27 13:54   ` [PATCH 05/17] common/xfs: capture external logs during metadump/mdrestore Darrick J. Wong
2023-12-27 13:54   ` [PATCH 06/17] xfs/122: update for rtgroups Darrick J. Wong
2023-12-27 13:54   ` [PATCH 07/17] punch-alternating: detect xfs realtime files with large allocation units Darrick J. Wong
2023-12-27 13:54   ` [PATCH 08/17] xfs/206: update mkfs filtering for rt groups feature Darrick J. Wong
2023-12-27 13:55   ` [PATCH 09/17] common: pass the realtime device to xfs_db when possible Darrick J. Wong
2023-12-27 13:55   ` [PATCH 10/17] common: filter rtgroups when we're disabling metadir Darrick J. Wong
2023-12-27 13:55   ` [PATCH 11/17] xfs/185: update for rtgroups Darrick J. Wong
2023-12-27 13:55   ` [PATCH 12/17] xfs/449: update test to know about xfs_db -R Darrick J. Wong
2023-12-27 13:56   ` [PATCH 13/17] xfs/122: update for rtbitmap headers Darrick J. Wong
2023-12-27 13:56   ` [PATCH 14/17] xfs/122: udpate test to pick up rtword/suminfo ondisk unions Darrick J. Wong
2023-12-27 13:56   ` [PATCH 15/17] xfs/27[46],xfs/556: fix tests to deal with rtgroups output in bmap/fsmap commands Darrick J. Wong
2023-12-27 13:56   ` [PATCH 16/17] common/xfs: capture realtime devices during metadump/mdrestore Darrick J. Wong
2023-12-27 13:57   ` [PATCH 17/17] common/fuzzy: adapt the scrub stress tests to support rtgroups Darrick J. Wong
2023-12-31 20:00 ` [PATCHSET v2.0 3/9] fstests: enable FITRIM for the realtime section Darrick J. Wong
2023-12-27 13:57   ` [PATCH 1/2] xfs: refactor statfs field extraction Darrick J. Wong
2023-12-27 13:57   ` [PATCH 2/2] common/xfs: FITRIM now supports realtime volumes Darrick J. Wong
2023-12-31 20:00 ` [PATCHSET v2.0 4/9] fstests: fixes for realtime rmap Darrick J. Wong
2023-12-27 13:57   ` [PATCH 01/13] xfs: fix tests that try to access the realtime rmap inode Darrick J. Wong
2023-12-27 13:58   ` [PATCH 02/13] fuzz: for fuzzing the rtrmapbt, find the path to the rt rmap btree file Darrick J. Wong
2023-12-27 13:58   ` [PATCH 03/13] xfs: race fsstress with realtime rmap btree scrub and repair Darrick J. Wong
2023-12-27 13:58   ` [PATCH 04/13] xfs/856: add rtrmapbt upgrade to test matrix Darrick J. Wong
2023-12-27 13:59   ` [PATCH 05/13] xfs/122: update for rtgroups-based realtime rmap btrees Darrick J. Wong
2023-12-27 13:59   ` [PATCH 06/13] xfs: fix various problems with fsmap detecting the data device Darrick J. Wong
2023-12-27 13:59   ` [PATCH 07/13] xfs/341: update test for rtgroup-based rmap Darrick J. Wong
2023-12-27 13:59   ` [PATCH 08/13] xfs/3{43,32}: adapt tests for rt extent size greater than 1 Darrick J. Wong
2023-12-27 14:00   ` [PATCH 09/13] xfs: skip tests if formatting small filesystem fails Darrick J. Wong
2023-12-27 14:00   ` [PATCH 10/13] xfs/443: use file allocation unit, not dbsize Darrick J. Wong
2023-12-27 14:00   ` [PATCH 11/13] populate: adjust rtrmap calculations for rtgroups Darrick J. Wong
2023-12-27 14:00   ` [PATCH 12/13] populate: check that we created a realtime rmap btree of the given height Darrick J. Wong
2023-12-27 14:01   ` [PATCH 13/13] fuzzy: create missing fuzz tests for rt rmap btrees Darrick J. Wong
2023-12-31 20:01 ` [PATCHSET v2.0 5/9] fstests: establish baseline for realtime rmap fuzz tests Darrick J. Wong
2023-12-27 14:01   ` [PATCH 1/1] fuzzy: create known output for rt rmap btree " Darrick J. Wong
2023-12-31 20:01 ` [PATCHSET v2.0 6/9] fstests: reflink on the realtime device Darrick J. Wong
2023-12-27 14:01   ` [PATCH 1/9] xfs/122: update fields for realtime reflink Darrick J. Wong
2023-12-27 14:01   ` [PATCH 2/9] common/populate: create realtime refcount btree Darrick J. Wong
2023-12-27 14:02   ` [PATCH 3/9] xfs: create fuzz tests for the " Darrick J. Wong
2023-12-27 14:02   ` [PATCH 4/9] xfs/27[24]: adapt for checking files on the realtime volume Darrick J. Wong
2023-12-27 14:02   ` [PATCH 5/9] xfs: race fsstress with realtime refcount btree scrub and repair Darrick J. Wong
2023-12-27 14:02   ` [PATCH 6/9] xfs: remove xfs/131 now that we allow reflink on realtime volumes Darrick J. Wong
2023-12-27 14:03   ` [PATCH 7/9] xfs/856: add rtreflink upgrade to test matrix Darrick J. Wong
2023-12-27 14:03   ` [PATCH 8/9] generic/331,xfs/240: support files that skip delayed allocation Darrick J. Wong
2023-12-27 14:03   ` [PATCH 9/9] common/xfs: fix _xfs_get_file_block_size when rtinherit is set and no rt section Darrick J. Wong
2023-12-31 20:01 ` [PATCHSET v2.0 7/9] fstests: establish baseline for realtime reflink fuzz tests Darrick J. Wong
2023-12-27 14:03   ` [PATCH 1/1] xfs: baseline golden output for rt refcount btree " Darrick J. Wong
2023-12-31 20:01 ` [PATCHSET v2.0 8/9] fstests: reflink with large realtime extents Darrick J. Wong
2023-12-27 14:04   ` [PATCH 1/5] xfs: make sure that CoW will write around when rextsize > 1 Darrick J. Wong
2023-12-27 14:04   ` [PATCH 2/5] xfs: skip cowextsize hint fragmentation tests on realtime volumes Darrick J. Wong
2023-12-27 14:04   ` [PATCH 3/5] misc: add more congruent oplen testing Darrick J. Wong
2023-12-27 14:05   ` [PATCH 4/5] xfs: test COWing entire rt extents Darrick J. Wong
2023-12-27 14:05   ` [PATCH 5/5] generic/303: avoid test failures on weird rt extent sizes Darrick J. Wong
2023-12-31 20:02 ` [PATCHSET v2.0 9/9] fstests: functional tests for rt quota Darrick J. Wong
2023-12-27 14:05   ` [PATCH 1/3] common: enable testing of realtime quota when supported Darrick J. Wong
2023-12-27 14:05   ` [PATCH 2/3] xfs: fix quota tests to adapt to realtime quota Darrick J. Wong
2023-12-27 14:06   ` [PATCH 3/3] xfs: regression testing of quota on the realtime device Darrick J. Wong
2023-12-31 20:03 ` [PATCHSET v2.0 1/4] xfs-documentation: document metadata directories Darrick J. Wong
2023-12-27 14:08   ` [PATCH 1/1] design: document the changes required to handle " Darrick J. Wong
2023-12-31 20:03 ` [PATCHSET v2.0 2/4] xfs-documentation: shard the realtime section Darrick J. Wong
2023-12-27 14:08   ` [PATCH 1/2] design: move discussion of realtime volumes to a separate section Darrick J. Wong
2023-12-27 14:08   ` [PATCH 2/2] design: document realtime groups Darrick J. Wong
2023-12-31 20:04 ` [PATCHSET v2.0 3/4] xfs-documentation: realtime reverse-mapping support Darrick J. Wong
2023-12-27 14:08   ` [PATCH 1/1] design: document the revisions to the realtime rmap formats Darrick J. Wong
2023-12-31 20:04 ` [PATCHSET v2.0 4/4] xfs-documentation: reflink on the realtime device Darrick J. Wong
2023-12-27 14:09   ` [PATCH 1/1] design: document changes for the realtime refcount btree Darrick J. Wong
  -- strict thread matches above, loose matches on Subject: below --
2022-12-30 22:19 [PATCHSET v1.0 0/8] xfs_db: debug realtime geometry Darrick J. Wong
2022-12-30 22:19 ` [PATCH 6/8] xfs_db: enable conversion of rt space units Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=170405011099.1810817.7976228081932005210.stgit@frogsfrogsfrogs \
    --to=djwong@kernel.org \
    --cc=cem@kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.