# git rev-parse -q --verify e41b93a6be57e26a4a123345f826a6ac3a213551^{commit} e41b93a6be57e26a4a123345f826a6ac3a213551 already have revision, skipping fetch # git checkout -q -f -B kisskb e41b93a6be57e26a4a123345f826a6ac3a213551 # git clean -qxdf # < git log -1 # commit e41b93a6be57e26a4a123345f826a6ac3a213551 # Author: Michael Ellerman # Date: Mon Dec 3 19:55:55 2018 +1100 # # powerpc/boot: Fix build failures with -j 1 # # In commit 5e9dcb6188a4 ("powerpc/boot: Expose Kconfig symbols to # wrapper") we added a dependency to serial.c on autoconf.h: # # $(obj)/serial.c: $(obj)/autoconf.h # # This works when building in-tree (ie. with KBUILD_OUTPUT unset) # because the obj tree is the src tree. # # But when building with eg. O=build and -j 1 the build fails: # # gcc ... -I../arch/powerpc/boot -c -o arch/powerpc/boot/serial.o arch/powerpc/boot/serial.c # gcc: error: arch/powerpc/boot/serial.c: No such file or directory # # Why this is only happening with -j 1 is not clear, when building with # -j greater than 1 somehow we decide to look for serial.c in the src # tree (../), eg: # # gcc -I../arch/powerpc/boot -c -o arch/powerpc/boot/serial.o ../arch/powerpc/boot/serial.c # # Regardless we shouldn't be specifying a dependency on serial.c in the # build tree, we want to add a dependency to the version in $(srctree) # so fix the rule to say that. # # Fixes: 5e9dcb6188a4 ("powerpc/boot: Expose Kconfig symbols to wrapper") # Tested-by: Daniel Axtens # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 e41b93a6be57e26a4a123345f826a6ac3a213551 # < make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-fixes_powerpc-randconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- randconfig KCONFIG_SEED=0x4FB790AC # Added to kconfig CONFIG_STANDALONE=y # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_CPU_BIG_ENDIAN=y # Added to kconfig CONFIG_PPC64=y # Added to kconfig CONFIG_PPC_DISABLE_WERROR=y # Added to kconfig CONFIG_SECTION_MISMATCH_WARN_ONLY=y # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # Added to kconfig CONFIG_CC_STACKPROTECTOR_STRONG=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig CONFIG_LD_HEAD_STUB_CATCH=y # Added to kconfig # yes \n | make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-fixes_powerpc-randconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- oldconfig yes: standard output: Broken pipe # make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-fixes_powerpc-randconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- In file included from /kisskb/src/arch/powerpc/include/asm/mmu.h:352:0, from /kisskb/src/arch/powerpc/include/asm/paca.h:22, from /kisskb/src/arch/powerpc/include/asm/hw_irq.h:64, from /kisskb/src/arch/powerpc/include/asm/irqflags.h:12, from /kisskb/src/include/linux/irqflags.h:16, from /kisskb/src/include/linux/spinlock.h:54, from /kisskb/src/include/linux/seqlock.h:36, from /kisskb/src/include/linux/time.h:6, from /kisskb/src/include/linux/compat.h:10, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:16: /kisskb/src/arch/powerpc/include/asm/mmu-book3e.h:275:2: error: #error Unsupported page size In file included from /kisskb/src/arch/powerpc/include/asm/nohash/pgtable.h:6:0, from /kisskb/src/arch/powerpc/include/asm/pgtable.h:20, from /kisskb/src/include/linux/memremap.h:7, from /kisskb/src/include/linux/mm.h:27, from /kisskb/src/include/linux/mman.h:5, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:14:2: error: #error "Page size not supported" In file included from /kisskb/src/arch/powerpc/include/asm/nohash/pgtable.h:6:0, from /kisskb/src/arch/powerpc/include/asm/pgtable.h:20, from /kisskb/src/include/linux/memremap.h:7, from /kisskb/src/include/linux/mm.h:27, from /kisskb/src/include/linux/mman.h:5, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:158:28: error: unknown type name 'pud_t' /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:163:30: error: unknown type name 'pud_t' /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:174:30: error: unknown type name 'pud_t' /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:176:29: error: unknown type name 'pud_t' /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:181:1: error: unknown type name 'pud_t' /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h: In function 'pte_pud': /kisskb/src/arch/powerpc/include/asm/nohash/64/pgtable.h:183:2: error: implicit declaration of function '__pud' [-Werror=implicit-function-declaration] In file included from /kisskb/src/arch/powerpc/include/asm/pgtable.h:80:0, from /kisskb/src/include/linux/memremap.h:7, from /kisskb/src/include/linux/mm.h:27, from /kisskb/src/include/linux/mman.h:5, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/include/asm-generic/pgtable.h: At top level: /kisskb/src/include/asm-generic/pgtable.h:16:2: error: #error CONFIG_PGTABLE_LEVELS is not consistent with __PAGETABLE_{P4D,PUD,PMD}_FOLDED /kisskb/src/include/asm-generic/pgtable.h:52:29: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:53:6: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:215:1: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:217:10: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:280:34: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:395:28: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:395:41: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:524:20: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:549:41: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:871:34: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:1029:32: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:1041:34: error: unknown type name 'pud_t' /kisskb/src/include/asm-generic/pgtable.h:1049:37: error: unknown type name 'pud_t' In file included from /kisskb/src/include/linux/mman.h:5:0, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/include/linux/mm.h:351:2: error: unknown type name 'pud_t' /kisskb/src/include/linux/mm.h:484:30: error: unknown type name 'pud_t' In file included from /kisskb/src/include/linux/mm.h:499:0, from /kisskb/src/include/linux/mman.h:5, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/include/linux/huge_mm.h:16:5: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:16:21: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:22:64: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:40:4: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:53:4: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:319:47: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:336:37: error: unknown type name 'pud_t' /kisskb/src/include/linux/huge_mm.h:353:22: error: unknown type name 'pud_t' In file included from /kisskb/src/include/linux/mman.h:5:0, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/include/linux/mm.h:1382:19: error: unknown type name 'pud_t' /kisskb/src/include/linux/mm.h: In function 'mm_inc_nr_puds': /kisskb/src/include/linux/mm.h:1747:40: error: 'pud_t' undeclared (first use in this function) /kisskb/src/include/linux/mm.h:1747:40: note: each undeclared identifier is reported only once for each function it appears in /kisskb/src/include/linux/mm.h: In function 'mm_dec_nr_puds': /kisskb/src/include/linux/mm.h:1752:40: error: 'pud_t' undeclared (first use in this function) /kisskb/src/include/linux/mm.h: At top level: /kisskb/src/include/linux/mm.h:1767:39: error: unknown type name 'pud_t' /kisskb/src/include/linux/mm.h:1837:54: error: unknown type name 'pud_t' /kisskb/src/include/linux/mm.h:2023:61: error: unknown type name 'pud_t' /kisskb/src/include/linux/mm.h:2028:58: error: unknown type name 'pud_t' In file included from /kisskb/src/include/linux/mman.h:5:0, from /kisskb/src/arch/powerpc/kernel/asm-offsets.c:23: /kisskb/src/include/linux/mm.h:2659:1: error: unknown type name 'pud_t' /kisskb/src/include/linux/mm.h:2660:29: error: unknown type name 'pud_t' cc1: some warnings being treated as errors make[2]: *** [/kisskb/src/./Kbuild:56: arch/powerpc/kernel/asm-offsets.s] Error 1 make[1]: *** [/kisskb/src/Makefile:1112: prepare0] Error 2 make[1]: *** Waiting for unfinished jobs.... make: *** [Makefile:152: sub-make] Error 2 Command 'make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-fixes_powerpc-randconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/powerpc-fixes_powerpc-randconfig_powerpc # Build took: 0:00:11.036019