Ingo Molnar wrote: > i have a lot of successful builds with that pattern, that's why i asked for > a specific config from you that definitely triggers it - i'd like to > investigate how it escaped my testing procedures. > Hm, I don't see how you could be; the functions are just outright missing. Without the patch, the attached config fails with: $ make 'ARCH=i386' arch/x86/xen/mmu.o [...] CC arch/x86/xen/mmu.o /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1810: error: 'xen_kmap_atomic_pte' undeclared here (not in a function) /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1816: error: 'xen_set_pte_init' undeclared here (not in a function) /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1824: error: initializer element is not constant /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1824: error: (near initialization for 'xen_mmu_ops.pte_val') /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1825: error: initializer element is not constant /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1825: error: (near initialization for 'xen_mmu_ops.pgd_val') /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1827: error: initializer element is not constant /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1827: error: (near initialization for 'xen_mmu_ops.make_pte') /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1828: error: initializer element is not constant /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1828: error: (near initialization for 'xen_mmu_ops.make_pgd') /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1838: error: initializer element is not constant /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1838: error: (near initialization for 'xen_mmu_ops.make_pmd') /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1839: error: initializer element is not constant /home/jeremy/hg/xen/paravirt/linux/arch/x86/xen/mmu.c:1839: error: (near initialization for 'xen_mmu_ops.pmd_val') make[3]: *** [arch/x86/xen/mmu.o] Error 1 make[2]: *** [arch/x86/xen/mmu.o] Error 2 make[1]: *** [sub-make] Error 2 make: *** [all] Error 2 (The errors from 1824 onwards seem to be spurious.) With the patch the file compiles properly. J