Re: Horrible L2 cache effects from kernel compile

Benjamin LaHaise (bcrl@redhat.com)
Mon, 3 Mar 2003 14:03:56 -0500


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/