lkml.org 
[lkml]   [2010]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/2] mm: add context argument to shrinker callback
    On Thu, Apr 22, 2010 at 12:42:47PM -0400, Christoph Hellwig wrote:
    > On Fri, Apr 23, 2010 at 02:38:01AM +1000, Nick Piggin wrote:
    > > I don't understand, it should be implemented like just all the other
    > > shrinkers AFAIKS. Like the dcache one that has to shrink multiple
    > > superblocks. There is absolutely no requirement for this API change
    > > to implement it in XFS.
    >
    > The dcache shrinker is an example for a complete mess.

    I don't know. It's not really caused by not registering multiple
    shrinkers. It seems to be caused more by the locking, which is not
    going away when you have multiple shrinkers.

    The XFS patch seems to be pinning the mount structure when it is
    registered, so it would have no such locking/refcounting problems
    using a private list AFAIKS.


    > > But the shrinker list *is* a global list. The downside of it in the way
    > > it was done in the XFS patch is that 1) it is much larger than a simple
    > > list head, and 2) not usable by anything other then the shrinker.
    >
    > It is an existing global list just made more useful. Whenever a driver
    > has muliple instances of pool that need shrinking this comes in useful,
    > it's not related to filesystems at all.

    I would say less useful, because shrinker structure cannot be used
    by anything but the shrinker, wheras a private list can be used by
    anything, including the applicable shrinker.



    \
     
     \ /
      Last update: 2010-04-22 18:59    [W:4.260 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site