On Sat, Sep 13, 2008 at 11:47:11PM +1000, Dave Chinner wrote:
> i_gen is incremented in directory operations when the
> directory is changed. It is never read or otherwise used
> so it should be removed to help reduce the size of the
> struct xfs_inode.
>
> The patch also removes a duplicate logging of the directory
> inode core. We only need to do this once per transaction
> so kill the one associated with the i_gen increment.
Still looks as good as when you posted it first month ago :)
And for reference here's the required fixup for xfsidbg:
Index: linux-2.6-xfs/fs/xfs/xfsidbg.c
===================================================================
--- linux-2.6-xfs.orig/fs/xfs/xfsidbg.c 2008-08-11 13:02:32.000000000 -0300
+++ linux-2.6-xfs/fs/xfs/xfsidbg.c 2008-08-11 13:36:50.000000000 -0300
@@ -3633,7 +3633,6 @@ xfs_prdinode_incore(xfs_icdinode_t *dip)
xfs_fmtformat((xfs_dinode_fmt_t)dip->di_aformat),
dip->di_dmevmask, dip->di_dmstate);
printflags(dip->di_flags, diflags, "flags");
- kdb_printf("gen 0x%x\n", dip->di_gen);
}
#ifdef XFS_RW_TRACE
@@ -6385,11 +6384,8 @@ xfsidbg_xnode(xfs_inode_t *ip)
kdb_printf("\n");
kdb_printf("update_core %d update size %d\n",
(int)(ip->i_update_core), (int) ip->i_update_size);
- kdb_printf("gen 0x%x delayed blks %d",
- ip->i_gen,
- ip->i_delayed_blks);
- kdb_printf("size %lld\n",
- ip->i_size);
+ kdb_printf("delayed blks %d size %lld\n",
+ ip->i_delayed_blks, ip->i_size);
#ifdef XFS_INODE_TRACE
qprintf(" trace 0x%p\n", ip->i_trace);
|