Re: Horrible L2 cache effects from kernel compile

From: Benjamin LaHaise (bcrl@redhat.com)
Date: Mon Mar 03 2003 - 14:03:56 EST


On Tue, Feb 25, 2003 at 10:18:09PM +0000, Linus Torvalds wrote:
> Right now the "child" list is just a simple linked list, and changing
> that to something more complex might make it possible to get rid of the
> hash entirely. But increasing the size of individual dentries is a bad
> idea, so it would have to be something fairly smart.

Part of it is that some of the dentry is simply just too bloated. At
160 bytes, there must be something we can prune:

        qstr.len - if anyone cares about 4GB long dentries, they
                          probably have other problems. could be a short
        d_lock - 1 bit out of 4 bytes
        d_vfs_flags - 2 bits out of 4 bytes
        d_flags - 3 bits out of 4 bytes
        d_move_count - rcu -- is it ever used on UP?
        d_time - only used by network filesystems
        *d_sb - rarely used, accessible via inode
        *d_fsdata - mostly used by exotic/network filesystems
        *d_cookie - only used when o_profile is active

In short, almost a third can be configured out of existence for some
setups, and others are candidates for being moved into filesystem specific
data.

                -ben

-- 
Junk email?  <a href=mailto:"aart@kvack.org">aart@kvack.org</a>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Mar 07 2003 - 22:00:22 EST