Linux XFS filesystem development
 help / color / mirror / Atom feed
* remove struct xfs_inode.i_ino
@ 2026-05-15 13:50 Christoph Hellwig
  2026-05-15 13:50 ` [PATCH 1/9] xfs: add a XFS_INODE_TO_AGNO helper Christoph Hellwig
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Christoph Hellwig @ 2026-05-15 13:50 UTC (permalink / raw)
  To: Carlos Maiolino; +Cc: linux-xfs

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(-)

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-05-15 13:51 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-15 13:50 remove struct xfs_inode.i_ino Christoph Hellwig
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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox