Re: (subset) [PATCH 22/32] vfs: inode cache conversion to hash-bl

Dave Chinner
2023-11-04T20:51:12Z

On Wed, Nov 01, 2023 at 10:36:15PM -0400, Kent Overstreet wrote:
> On Tue, Oct 31, 2023 at 12:02:47PM +0100, Christian Brauner wrote:
> > > The follow up including a statement about "being arsed" once more was
> > > to Christian, not you and was rather "tongue in cheek".
> >
> > Fyi, I can't be arsed to be talked to like that.
> >
> > > Whether the patch is ready for reviews and whatnot is your call to
> > > make as the author.
> >
> > This is basically why that patch never staid in -next. Dave said this
> > patch is meaningless without his other patchs and I had no reason to
> > doubt that claim nor currently the cycles to benchmark and disprove it.
>
> It was a big benefit to bcachefs performance, and I've had it in my tree
> for quite some time. Was there any other holdup?

Plenty.

- A lack of recent validation against ext4, btrfs and other
filesystems.
- the loss of lockdep coverage by moving to bit locks
- it breaks CONFIG_PREEMPT_RT=y because we nest other spinlocks
inside the inode_hash_lock and we can't do that if we convert the
inode hash to bit locks because RT makes spinlocks sleeping locks.
- There's been additions for lockless RCU inode hash lookups from
AFS and ext4 in weird, uncommon corner cases and I have no idea
how to validate they still work correctly with hash-bl. I suspect
they should just go away with hash-bl, but....

There's more, but these are the big ones.

-Dave.
--
Dave Chinner
david@fromorbit.com