Re: [PATCH 6/8] Allow per-cpu variables to be page-aligned

From: Rusty Russell
Date: Tue Mar 06 2007 - 19:18:03 EST


On Tue, 2007-03-06 at 14:15 +0100, Ingo Molnar wrote:
> * Rusty Russell <rusty@xxxxxxxxxxxxxxx> wrote:
>
> > Xen wants page-aligned GDT (and PDA must not cross a page-boundary,
> > but that doesn't happen at the moment since it's so close to start of
> > page). Let's allow page-alignment in general for per-cpu data.
> >
> > Because larger alignments can use more room, we increase the max
> > per-cpu memory to 64k rather than 32k: it's getting a little tight.
>
> i recently needed page-aligned per-cpu data too for KVM-paravirt. Btw.,
> what's the size increase of the native kernel?

To clarify for those reading fast, this patch doesn't increase at all,
since noone uses page-alignment. For the next patch which aligns the
gdt, it's about +12k (21k -> 33k), but then we take away the pda in the
next patch and it drops back to +8k (the pda is in the same file as the
gdt, and on my system at least it ends up getting its own 4k alignment
too).

AFAICT, we could save the wasted partial page in three ways: by trying
to link it first, if it's only a case of one file, by having a special
page-aligned percpu data section, or by having a smarter linker.

Cheers,
Rusty.


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