powerpc: Mark some variables in the page fault path __read_mostly
PATCH 1/1 powerpc: Mark some variables in the page fault path __read_mostly
Using perf to trace L1 dcache misses and dumping data addresses I found a few variables taking a lot of misses. Since they are almost never written, they should go into the __read_mostly section.
Signed-off-by Anton Blanchard <[email protected]>
---
arch/powerpc/xmon/xmon.c +1 -1
@@ -61,7 +61,7 @@ static int xmon_owner;static int xmon_gate;#endif /* CONFIG_SMP */ -static unsigned long in_xmon =0 ; +static unsigned long in_xmon__read_mostly =0 ;static unsigned long adrs;static int size =1 ;
arch/powerpc/kernel/traps.c +7 -7
@@ -60,13 +60,13 @@#endif #if defined(CONFIG_DEBUGGER ) || defined(CONFIG_KEXEC ) -int (*__debugger)(struct pt_regs *regs); -int (*__debugger_ipi)(struct pt_regs *regs); -int (*__debugger_bpt)(struct pt_regs *regs); -int (*__debugger_sstep)(struct pt_regs *regs); -int (*__debugger_iabr_match)(struct pt_regs *regs); -int (*__debugger_dabr_match)(struct pt_regs *regs); -int (*__debugger_fault_handler)(struct pt_regs *regs); +int (*__debugger)(struct pt_regs *regs)__read_mostly ; +int (*__debugger_ipi)(struct pt_regs *regs)__read_mostly ; +int (*__debugger_bpt)(struct pt_regs *regs)__read_mostly ; +int (*__debugger_sstep)(struct pt_regs *regs)__read_mostly ; +int (*__debugger_iabr_match)(struct pt_regs *regs)__read_mostly ; +int (*__debugger_dabr_match)(struct pt_regs *regs)__read_mostly ; +int (*__debugger_fault_handler)(struct pt_regs *regs)__read_mostly ;EXPORT_SYMBOL (__debugger);EXPORT_SYMBOL (__debugger_ipi);