Re: [RFC] Alignment of fields in struct dentry

From: Arnd Bergmann
Date: Mon Sep 18 2006 - 17:54:36 EST


On Monday 18 September 2006 23:24, Jörn Engel wrote:
> On Fri, 15 September 2006 22:44:07 +0200, Arnd Bergmann wrote:
> >
> > I'd guess that a 32 byte alignment is much better here, 64 byte sounds
> > excessive. It should have the same effect with the current dentry layout
> > and default config options, but would keep the d_iname length in the
> > 16-44 byte range instead of 16-76 byte as your patch does.
> >
> > Since all important fields are supposed to be kept in 32 bytes anyway,
> > they are still either at the start or the end of a given cache line,
> > but never cross two.
>
> Another take would be to use a cacheline. But I guess the difference
> between 32/64/cacheline is mostly academic, given the rate of changes
> to struct dentry.

There have been so many optimizations and misoptimizations regarding
the dentry struct over the years. See http://lkml.org/lkml/2004/5/8/117
for the almost exact opposite of this patch, along with the same discussion
that we're having now.

Arnd <><
-
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/