Hi,
2.6.24-rc5-rt1 won't compile on PPC if CONFIG_SMP is turned off.
CC arch/powerpc/kernel/pmc.o
In file included from include/asm/tlb.h:62,
from arch/powerpc/mm/mem.c:44:
include/asm-generic/tlb.h: In function ‘tlb_gather_mmu’:
include/asm-generic/tlb.h:58: error: implicit declaration of function ‘__get_cpu_lock’
include/asm-generic/tlb.h:58: error: ‘mmu_gathers’ undeclared (first use in this function)
include/asm-generic/tlb.h:58: error: (Each undeclared identifier is reported only once
include/asm-generic/tlb.h:58: error: for each function it appears in.)
include/asm-generic/tlb.h:58: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:58: warning: type defaults to ‘int’ in declaration of ‘type name’
include/asm-generic/tlb.h:58: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:58: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:58: warning: type defaults to ‘int’ in declaration of ‘type name’
include/asm-generic/tlb.h:58: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:58: error: implicit declaration of function ‘__get_cpu_var_locked’
include/asm-generic/tlb.h:58: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h: In function ‘tlb_finish_mmu’:
include/asm-generic/tlb.h:96: error: ‘mmu_gathers’ undeclared (first use in this function)
include/asm-generic/tlb.h:96: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:96: warning: type defaults to ‘int’ in declaration of ‘type name’
include/asm-generic/tlb.h:96: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:96: error: invalid lvalue in unary ‘&’
include/asm-generic/tlb.h:96: warning: type defaults to ‘int’ in declaration of ‘type name’
include/asm-generic/tlb.h:96: error: invalid lvalue in unary ‘&’
The patch below fixes it.
Thanks,
Sripathi.
Signed-off-by: Sripathi Kodi <[email protected]>
diff -uprN linux-2.6.24-rc5-rt1_org/include/asm-powerpc/percpu.h linux-2.6.24-rc5-rt1/include/asm-powerpc/percpu.h
--- linux-2.6.24-rc5-rt1_org/include/asm-powerpc/percpu.h 2008-01-12 17:43:03.000000000 +0530
+++ linux-2.6.24-rc5-rt1/include/asm-powerpc/percpu.h 2008-01-12 17:43:58.000000000 +0530
@@ -68,6 +68,8 @@ extern void setup_per_cpu_areas(void);
#define __get_cpu_var(var) per_cpu__##var
#define __raw_get_cpu_var(var) per_cpu__##var
+#define __get_cpu_lock(var, cpu) per_cpu_lock__##var##_locked
+#define __get_cpu_var_locked(var, cpu) per_cpu__##var##_locked
#endif /* SMP */