Re: [PATCH 12/17] fs: Introduce per-bucket inode hash locks

From: Nick Piggin
Date: Sat Oct 16 2010 - 03:55:14 EST


On Wed, Sep 29, 2010 at 09:52:14PM -0400, Christoph Hellwig wrote:
>
> Instead of doing the lock overkill on a still fundamentally global data

How do you figure it is overkill? Actually the hash insertion/removal
scales *really* well with per-bucket locks and it is a technique used
and proven in other parts of the kernel like networking.

Having a global lock there is certainly a huge bottleneck when you
start increasing system size, so I don't know why you keep arguing
against this.


> structure what about replacing this with something better.

I won't be doing this until after the scalability work.

> you've already done this with the XFS icache, and while the per-AG
> concept obviously can't be generic at least some of the lessons could be
> applied.
>
> then again how much testing did this get anyway given that you
> benchmark ran mostly XFS which doesn't hit this at all?
>
> If it was up to me I'd dtop this (and the bl_list addition) from the
> series for now and wait for people who care about the scalability of
> the generic icache code to come up with a better data structure.

I do care about scalability of icache code. Given how simple this
is, and seeing as we're about to have the big locking rework, I
much prefer just fixing all the global locks now (which need to
be fixed anyway).

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/