Re: [patch] Per-sb s_all_inodes list

From: Mike Waychison
Date: Mon Jan 10 2005 - 21:21:46 EST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

William Lee Irwin III wrote:
> On Mon, Jan 10, 2005 at 04:19:24PM -0500, Mike Waychison wrote:
>
>>Releasing a super_block requires walking all inodes for the given
>>superblock and releasing them. Currently, inodes are found on one of
>>four lists:
>
> [...]
>
>>The second list, inode_unused can potentially be quite large.
>>Unfortunately, it cannot be made per-sb as it is the global LRU list
>>used for inode cache reduction under memory pressure.
>>When unmounting a single filesystem, profiling shows dramatic time spent
>>walking inode_unused. This because very noticeble when one is
>>unmounting a decently sized tree of filesystems.
>>The proposed solution is to create a new list per-sb, that contains all
>>inodes allocated. It is maintained under the inode_lock for the sake of
>>simplicity, but this may prove unneccesary, and may be better done with
>>another global or per-sb lock.
>
>
> I thought this was a good idea a number of months ago myself when I saw
> a patch for 2.4.x implementing this from Kirill Korotaev, so I ported
> that code to 2.6.x and it got merged in -mm then. That patch was merged
> into Linus' bk shortly after 2.6.10. Could you check Linus' bk to see
> if what made it there resolves the issue as well as your own?
>

Excellent. I eyeballed the patch on bkbits.net and it does exactly what
I posted.

Thanks,

- --
Mike Waychison
Sun Microsystems, Inc.
1 (650) 352-5299 voice
1 (416) 202-8336 voice

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
NOTICE: The opinions expressed in this email are held by me,
and may not represent the views of Sun Microsystems, Inc.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFB4zUBdQs4kOxk3/MRAhaKAJwJDvFtnb57DkMpWuEB1C8ePZItFwCfSLrm
IKROVg53ElpF8V8PQRRB7vQ=
=AjvL
-----END PGP SIGNATURE-----
-
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/