1
linux/arch/x86_64
Andi Kleen 53ee11ae0d [PATCH] Optimize PDA accesses slightly
Based on a idea by Jeremy Fitzhardinge:

Replace the volatiles and memory clobbers in the PDA access with
telling gcc about access to a proxy PDA structure that doesn't
actually exist. But the dummy accesses give a defined ordering for
read/write accesses.

Also add some memory barriers to the early GS initialization to
make sure no PDA access is moved before it.

Advantage is some .text savings (probably most from better
code for accessing "current"):

   text    data     bss     dec     hex filename
4845647 1223688  615864 6685199  66020f vmlinux
4837780 1223688  615864 6677332  65e354 vmlinux-pda

1.2% smaller code

Cc:  Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Andi Kleen <ak@suse.de>
2006-09-26 10:52:38 +02:00
..
boot [PATCH] Fix boot code head.S warning 2006-09-26 10:52:37 +02:00
crypto [CRYPTO] api: Get rid of flags argument to setkey 2006-09-21 11:41:02 +10:00
ia32 [PATCH] Fix sparse warnings in compat aout code 2006-09-26 10:52:33 +02:00
kernel [PATCH] Optimize PDA accesses slightly 2006-09-26 10:52:38 +02:00
lib [PATCH] annotate arch/x86_64/lib/*.S 2006-09-26 10:52:32 +02:00
mm [PATCH] Use proper accessors to change PSE bits in change_page_attr() 2006-09-26 10:52:37 +02:00
oprofile [PATCH] Move Kprobes and Oprofile to "Instrumentation Support" menu 2005-11-07 07:53:35 -08:00
pci [PATCH] fix bus numbering format in mmconfig warning 2006-09-26 10:52:35 +02:00
defconfig [PATCH] Update defconfig 2006-09-26 10:52:26 +02:00
Kconfig [PATCH] i386/x86-64: Improve Kconfig description of CRASH_DUMP 2006-09-26 10:52:35 +02:00
Kconfig.debug [PATCH] lockdep: irqtrace subsystem, x86_64 support 2006-07-03 15:27:03 -07:00
Makefile [PATCH] x86: Detect CFI support in the assembler at runtime 2006-09-26 10:52:30 +02:00