Fix CONFIG_SMP=n build error on ppc64
PATCH 1/1 Fix CONFIG_SMP=n build error on ppc64
[POWERPC] Fix CONFIG_SMP=n build error
The patch "KVM: fix !SMP build error" change the way smp_call_function() actually uses the passed in function names on non-SMP builds. So previously it was never caught that the function passed in was never actually defined.
This causes a build error on ppc64_defconfig + CONFIG_SMP=n:
arch/powerpc/mm/tlb_64.c: In function 'pgtable_free_now':arch/powerpc/mm/tlb_64.c:71: error: 'pte_free_smp_sync' undeclared (first use in this function) arch/powerpc/mm/tlb_64.c:71: error: (Each undeclared identifier is reported only once arch/powerpc/mm/tlb_64.c:71: error: for each function it appears in.)
So we need to define it even if CONFIG_SMP is off. Either that or ifdef out the smp_call_function() call, but that's ugly.
arch/powerpc/mm/tlb_64.c +0 -2
@@ -54,12 +54,10 @@ unsigned long pte_freelist_forced_free; ((PAGE_SIZE -sizeof (struct pte_freelist_batch )) \ / sizeof(pgtable_free_t)) -#ifdef CONFIG_SMP static void pte_free_smp_sync (void *arg) {/* Do nothing, just ensure we sync with all CPUs */ } -#endif /* This is only called when we are critically out of memory * (and fail to get a page in pte_free_tlb).
Quoted 9 lines · Olof Johansson
[POWERPC] Fix
CONFIG_SMP=nbuild errorThe patch "KVM: fix !SMP build error" change the way
smp_call_function()actually uses the passed in function names on non-SMP builds. So previously it was never caught that the function passed in was never actually defined.This causes a build error on
ppc64_defconfig+CONFIG_SMP=n:
Quoted 7 lines
arch/powerpc/mm/tlb_64.c: In function 'pgtable_free_now':arch/powerpc/mm/tlb_64.c:71: error: 'pte_free_smp_sync' undeclared (first use in this function)arch/powerpc/mm/tlb_64.c:71: error: (Each undeclared identifier is reported only oncearch/powerpc/mm/tlb_64.c:71: error: for each function it appears in.)So we need to define it even if
CONFIG_SMPis off. Either that or ifdef out thesmp_call_function()call, but that's ugly.
Hi,
Thanks, the patch fixes the build failure.
arch/powerpc/mm/tlb_64.c +0 -2
@@ -54,12 +54,10 @@ unsigned long pte_freelist_forced_free; ((PAGE_SIZE - sizeof(struct pte_freelist_batch)) \ / sizeof(pgtable_free_t)) -#ifdef CONFIG_SMP static void pte_free_smp_sync (void *arg) {/* Do nothing, just ensure we sync with all CPUs */ } -#endif /* This is only called when we are critically out of memory * (and fail to get a page in pte_free_tlb).
Signature · 4 lines
Thanks & Regards, Kamalesh Babulal, Linux Technology Center, IBM, ISTL.