Re: [PATCH 01/61] vfs: widen inode hash/lookup functions to u64

Jan Kara
2026-02-26T17:14:52Z

On Thu 26-02-26 18:00:36, Jan Kara wrote:
> On Thu 26-02-26 10:55:03, Jeff Layton wrote:
> > Change the inode hash/lookup VFS API functions to accept u64 parameters
> > instead of unsigned long for inode numbers and hash values. This is
> > preparation for widening i_ino itself to u64, which will allow
> > filesystems to store full 64-bit inode numbers on 32-bit architectures.
> >
> > Since unsigned long implicitly widens to u64 on all architectures, this
> > change is backward-compatible with all existing callers.
> >
> > Functions updated:
> > - hash(), find_inode_fast(), find_inode_by_ino_rcu(), test_inode_iunique()
> > - __insert_inode_hash(), iget_locked(), iget5_locked(), iget5_locked_rcu()
> > - ilookup(), ilookup5(), ilookup5_nowait()
> > - find_inode_nowait(), find_inode_rcu()
> > - inode_insert5(), insert_inode_locked4()
> > - insert_inode_locked() (local variable)
> > - dump_mapping() (local variable and format string)
> >
> > Signed-off-by: Jeff Layton <jlayton@kernel.org>
>
> Looks good. Feel free to add:
>
> Reviewed-by: Jan Kara <jack@suse.cz>

Thinking some more about this (and also seeing the discussion about patch
2) - maybe instead of using explicit u64 we should typedef kino_t as u64
and use that?

Honza
--
Jan Kara <jack@suse.com>
SUSE Labs, CR