From: Christoph Hellwig <hch@lst.de>
To: Carlos Maiolino <cem@kernel.org>
Cc: linux-xfs@vger.kernel.org
Subject: remove struct xfs_inode.i_ino
Date: Fri, 15 May 2026 15:50:21 +0200 [thread overview]
Message-ID: <20260515135103.4042407-1-hch@lst.de> (raw)
Hi all,
now that the VFS inode i_ino field is always a u64, there is no need
to duplicate the inode number in the XFS inode.
This series first adds a few helpers to reduce i_ino reference, and
then switches the rest of the code over. A new I_INO helper is added
to shorten the dereference and to make userspace porting easier.
After this and the rw_semaphore shrink that went into 7.1-rc, it might
be time to look into re-packing the xfs_inode, but that is left for
another series.
Diffstat:
libxfs/xfs_attr.c | 2
libxfs/xfs_attr_leaf.c | 2
libxfs/xfs_bmap.c | 20 ++----
libxfs/xfs_bmap_btree.c | 8 +-
libxfs/xfs_btree.c | 18 ++---
libxfs/xfs_btree_staging.c | 2
libxfs/xfs_da_btree.c | 2
libxfs/xfs_dir2.c | 44 +++++++-------
libxfs/xfs_dir2_node.c | 2
libxfs/xfs_dir2_sf.c | 4 -
libxfs/xfs_exchmaps.c | 8 +-
libxfs/xfs_format.h | 6 +
libxfs/xfs_ialloc.c | 4 -
libxfs/xfs_inode_buf.c | 4 -
libxfs/xfs_inode_fork.c | 6 -
libxfs/xfs_inode_util.c | 13 +---
libxfs/xfs_metadir.c | 2
libxfs/xfs_parent.c | 8 +-
libxfs/xfs_parent.h | 2
libxfs/xfs_rmap.c | 6 -
libxfs/xfs_rmap.h | 4 +
libxfs/xfs_rtbitmap.c | 4 -
libxfs/xfs_rtrefcount_btree.c | 4 -
libxfs/xfs_rtrmap_btree.c | 4 -
libxfs/xfs_symlink_remote.c | 6 -
scrub/agheader_repair.c | 20 ++----
scrub/attr.c | 4 -
scrub/attr_repair.c | 16 ++---
scrub/bmap.c | 24 +++----
scrub/bmap_repair.c | 8 +-
scrub/common.c | 26 ++++----
scrub/common.h | 6 +
scrub/cow_repair.c | 3
scrub/dabtree.c | 4 -
scrub/dir.c | 24 +++----
scrub/dir_repair.c | 42 ++++++-------
scrub/dirtree.c | 24 +++----
scrub/dirtree_repair.c | 4 -
scrub/findparent.c | 33 +++++-----
scrub/inode.c | 18 ++---
scrub/inode_repair.c | 5 -
scrub/iscan.c | 2
scrub/listxattr.c | 10 +--
scrub/metapath.c | 16 ++---
scrub/newbt.c | 8 --
scrub/nlinks.c | 34 +++++------
scrub/nlinks_repair.c | 6 -
scrub/orphanage.c | 10 +--
scrub/parent.c | 31 ++++------
scrub/parent_repair.c | 18 ++---
scrub/quotacheck.c | 2
scrub/readdir.c | 12 +--
scrub/reap.c | 5 -
scrub/repair.c | 2
scrub/rmap_repair.c | 2
scrub/rtbitmap.c | 16 ++---
scrub/rtbitmap_repair.c | 2
scrub/rtrefcount.c | 2
scrub/rtrefcount_repair.c | 2
scrub/rtrmap.c | 3
scrub/rtrmap_repair.c | 4 -
scrub/rtsummary.c | 14 ++--
scrub/rtsummary_repair.c | 2
scrub/scrub.c | 2
scrub/symlink_repair.c | 8 +-
scrub/tempfile.c | 2
scrub/trace.c | 2
scrub/trace.h | 116 ++++++++++++++++++-------------------
xfs_aops.c | 2
xfs_attr_item.c | 4 -
xfs_attr_list.c | 12 +--
xfs_bmap_item.c | 4 -
xfs_bmap_util.c | 4 -
xfs_dir2_readdir.c | 4 -
xfs_error.c | 2
xfs_exchmaps_item.c | 4 -
xfs_exchrange.c | 4 -
xfs_export.c | 8 +-
xfs_filestream.c | 6 -
xfs_handle.c | 4 -
xfs_healthmon.c | 6 -
xfs_icache.c | 56 +++++++++---------
xfs_inode.c | 37 +++++-------
xfs_inode.h | 19 ++----
xfs_inode_item.c | 8 +-
xfs_inode_item_recover.c | 4 -
xfs_ioctl.c | 2
xfs_iomap.c | 4 -
xfs_iops.c | 3
xfs_iunlink_item.c | 2
xfs_mount.c | 2
xfs_qm.c | 10 +--
xfs_quotaops.c | 2
xfs_reflink.c | 4 -
xfs_symlink.c | 6 -
xfs_trace.h | 129 ++++++++++++++++++++----------------------
xfs_trans.c | 2
xfs_trans_dquot.c | 6 -
xfs_xattr.c | 2
99 files changed, 564 insertions(+), 577 deletions(-)
next reply other threads:[~2026-05-15 13:51 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-15 13:50 Christoph Hellwig [this message]
2026-05-15 13:50 ` [PATCH 1/9] xfs: add a XFS_INODE_TO_AGNO helper Christoph Hellwig
2026-05-15 13:50 ` [PATCH 2/9] xfs: add a XFS_INODE_TO_AGINO helper Christoph Hellwig
2026-05-15 13:50 ` [PATCH 3/9] xfs: add a XFS_INO_TO_FSB helper Christoph Hellwig
2026-05-15 13:50 ` [PATCH 4/9] xfs: add a xfs_rmap_inode_bmbt_owner Christoph Hellwig
2026-05-15 13:50 ` [PATCH 5/9] xfs: add a xfs_rmap_inode_owner helper Christoph Hellwig
2026-05-15 13:50 ` [PATCH 6/9] xfs: add a xchk_ip_set_corrupt helper Christoph Hellwig
2026-05-15 13:50 ` [PATCH 7/9] xfs: convert xchk_inode_xref_set_corrupt to xchk_ip_xref_set_corrupt Christoph Hellwig
2026-05-15 13:50 ` [PATCH 8/9] xfs: remove xfs_setup_existing_inode Christoph Hellwig
2026-05-15 13:50 ` [PATCH 9/9] xfs: remove the i_ino field in struct xfs_inode Christoph Hellwig
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=20260515135103.4042407-1-hch@lst.de \
--to=hch@lst.de \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox