From: Andi Kleen <andi@firstfloor.org>
To: Nick Piggin <npiggin@suse.de>
Cc: linux-fsdevel@vger.kernel.org,
Linux Memory Management List <linux-mm@kvack.org>,
robert.richter@amd.com, oprofile-list@lists.sf.net
Subject: Re: [patch][rfc] fs: shrink struct dentry
Date: Mon, 01 Dec 2008 12:09:12 +0100 [thread overview]
Message-ID: <87ljv05ezr.fsf@basil.nowhere.org> (raw)
In-Reply-To: <20081201083343.GC2529@wotan.suse.de> (Nick Piggin's message of "Mon, 1 Dec 2008 09:33:43 +0100")
Nick Piggin <npiggin@suse.de> writes:
> Hi,
> Comments?
> Thanks,
> Nick
>
> --
> struct dentry is one of the most critical structures in the kernel. So it's
> sad to see it going neglected.
Very nice. But the sad thing is that such optimizations tend to quickly
bit rot again. At least add big fat comments.
How does it look like on 32bit hosts?
Since the size is variable depending on word size it might be a
good idea to auto adjust inline name length to always give a nice
end result for slab.
Also I think with some effort it would be possible to shrink it more.
But since you already reached cache lines, it would just allow
to increase inline name length. Ok perhaps it would help more on 32bit.
Further possibilities to shrink:
- Eliminate name.length. It seems of dubious utility
(in general I'm not sure struct qstr is all that useful)
- Change some of the children/alias list_heads to hlist_heads. I don't
think these lists typically need O(1) access to the end.
- If the maximum mount nest was limited d_mounted could migrate
into d_flags (that would be probably desparate)
-Andi
--
ak@linux.intel.com
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2008-12-01 11:09 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-01 8:33 Nick Piggin
2008-12-01 11:09 ` Andi Kleen [this message]
2008-12-01 11:26 ` Nick Piggin
2008-12-01 17:51 ` John Levon
2008-12-01 18:04 ` Nick Piggin
2008-12-01 19:38 ` John Levon
2008-12-02 7:06 ` Nick Piggin
2008-12-02 13:04 ` John Levon
2008-12-02 13:49 ` Nick Piggin
2008-12-02 14:49 ` John Levon
2008-12-02 15:11 ` Nick Piggin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ljv05ezr.fsf@basil.nowhere.org \
--to=andi@firstfloor.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=npiggin@suse.de \
--cc=oprofile-list@lists.sf.net \
--cc=robert.richter@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox