Hi Ingo Here is a patch against linux-2.6-x86 git Thank you [PATCH] X86 : Introduce DEFINE_PER_CPU_PAGE_ALIGNED() macro for x86 arch to shrink percpu section While examining holes in percpu section I found this : c0659008 D per_cpu__cpu_number c065900c D per_cpu__irq_regs <BIG HOLE of about 4000 bytes> c065a000 D per_cpu__gdt_page c065b000 d per_cpu__next_check This is because gdt_page is a percpu variable, defined with a page alignement, and linker is doing its job. I introduced a new macro DEFINE_PER_CPU_PAGE_ALIGNED() to avoid wasting this space. All page aligned variables are put in a separate subsection .data.percpu.page_aligned This macro is defined for x86/generic architectures only but could be added to other arches if needed. Before patch : # size -A vmlinux | grep percpu .data.percpu 26144 3227328512 After patch : # size -A vmlinux | grep percpu .data.percpu 22048 3227328512 Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> arch/x86/kernel/cpu/common.c | 2 +- arch/x86/kernel/vmlinux_32.lds.S | 1 + include/asm-generic/percpu.h | 4 ++++ include/asm-generic/vmlinux.lds.h | 1 + include/asm-x86/percpu_32.h | 4 ++++ include/asm-x86/percpu_64.h | 4 ++++ 6 files changed, 15 insertions(+), 1 deletion(-)
| Thomas Gleixner | Re: Linux 2.6.21-rc1 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| James Bottomley | [Ksummit-2008-discuss] Fixing the Kernel Janitors project |
| James Morris | Re: LSM conversion to static interface |
git: | |
| Natalie Protasevich | [BUG] New Kernel Bugs |
| Christoph Hellwig | Re: [PATCH 06/32] IGET: Mark iget() and read_inode() as being obsolete [try #2] |
| Linus Torvalds | Re: [GIT]: Networking |
| Jarek Poplawski | [PATCH take 2] pkt_sched: Protect gen estimators under est_lock. |
