From owner-freebsd-current@freebsd.org Mon Mar 27 11:08:52 2017 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6613ACA1F54 for ; Mon, 27 Mar 2017 11:08:52 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citapm.icyb.net.ua (citapm.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 734D6C01 for ; Mon, 27 Mar 2017 11:08:50 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citapm.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id OAA13581; Mon, 27 Mar 2017 14:08:49 +0300 (EEST) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1csSW1-000GZj-6N; Mon, 27 Mar 2017 14:08:49 +0300 Subject: Re: New /head/sys/amd64/amd64/genassym.c breaks buildkernel amd64 current To: Rainer Hurling References: <74862f9a-ac5b-e39b-5178-f3db5623c172@FreeBSD.org> <9b493788-0a91-aa6b-2673-318320d8ca99@gwdg.de> Cc: Manfred Antar , FreeBSD Current From: Andriy Gapon Message-ID: <41a7d9b5-f803-7297-190c-799fa59a9f51@FreeBSD.org> Date: Mon, 27 Mar 2017 14:07:52 +0300 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <9b493788-0a91-aa6b-2673-318320d8ca99@gwdg.de> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Mar 2017 11:08:52 -0000 On 03/27/2017 14:35, Rainer Hurling wrote: > Am 27.03.2017 um 10:31 schrieb Andriy Gapon: >> On 03/26/2017 00:21, Manfred Antar wrote: >>> Recent change to genassym.c breaks building a current kernel: >>> >>> -------------------------------------------------------------- >>>>>> stage 3.1: building everything >>> -------------------------------------------------------------- >>> cd /usr/obj/usr/src/sys/pozo; COMPILER_VERSION=40000 COMPILER_TYPE=clang >>> COMPILER_FREEBSD_VERSION=1200006 MAKEOBJDIRPREFIX=/usr/obj >>> MACHINE_ARCH=amd64 MACHINE=amd64 CPUTYPE= >>> GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin >>> GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font >>> GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac >>> CC="/usr/local/bin/ccache cc -target x86_64-unknown-freebsd12.0 >>> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin" >>> CXX="/usr/local/bin/ccache c++ -target x86_64-unknown-freebsd12.0 >>> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin" CPP="cpp >>> -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp >>> -B/usr/obj/usr/src/tmp/usr/bin" AS="as" AR="ar" LD="ld" LLVM_LINK="" NM=nm >>> OBJCOPY="objcopy" RANLIB=ranlib STRINGS= SIZE="size" INSTALL="sh >>> /usr/src/tools/install.sh" >>> PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr >>> >> /sbin:/usr/obj/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin make -m >> /usr/src/share/mk KERNEL=kernel all -DNO_MODULES_OBJ >>> machine -> /usr/src/sys/amd64/include >>> x86 -> /usr/src/sys/x86/include >>> /usr/local/bin/ccache cc -target x86_64-unknown-freebsd12.0 >>> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin -c -O2 -pipe >>> -fno-strict-aliasing -g -nostdinc -I. -I/usr/src/sys >>> -I/usr/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include >>> opt_global.h -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -MD >>> -MF.depend.genassym.o -MTgenassym.o -mcmodel=kernel -mno-red-zone -mno-mmx >>> -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fwrapv >>> -fstack-protector -gdwarf-2 -Wall -Wredundant-decls -Wnested-externs >>> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual >>> -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ >>> -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas >>> -Wno-error-tautological-compare -Wno-error-empty-body >>> -Wno-error-parentheses-equality -Wno-error-unused-function >>> -Wno-error-pointer-sign -Wno-error-shift-negative-value >>> -Wno-error-address-of-packed-member -mno-aes -mno-avx -std=iso9 >> 899:1999 /usr/src/sys/amd64/amd64/genassym.c >>> In file included from /usr/src/sys/amd64/amd64/genassym.c:47: >>> /usr/src/sys/sys/bus.h:730:10: fatal error: 'device_if.h' file not found >>> #include "device_if.h" >>> ^~~~~~~~~~~~~ >>> 1 error generated. >>> *** Error code 1 >>> >>> Stop. >>> make[2]: stopped in /usr/obj/usr/src/sys/pozo >>> *** Error code 1 >>> >>> Stop. >>> make[1]: stopped in /usr/src >>> *** Error code 1 >>> >>> Stop. >>> make: stopped in /usr/src >>> >>> >>> cd /usr/obj/usr/src/sys/pozo ; make device_if.h >>> awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/device_if.m -h >>> >>> also bus_if.h is missing: >>> (pozo)5023}make >>> /usr/local/bin/ccache cc -c -O2 -pipe -fno-strict-aliasing -g -nostdinc -I. >>> -I/usr/src/sys -I/usr/src/sys/contrib/libfdt -D_KERNEL >>> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-omit-frame-pointer >>> -mno-omit-leaf-frame-pointer -MD -MF.depend.genassym.o -MTgenassym.o >>> -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float >>> -fno-asynchronous-unwind-tables -ffreestanding -fwrapv -fstack-protector >>> -gdwarf-2 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes >>> -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef >>> -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ -Wmissing-include-dirs >>> -fdiagnostics-show-option -Wno-unknown-pragmas >>> -Wno-error-tautological-compare -Wno-error-empty-body >>> -Wno-error-parentheses-equality -Wno-error-unused-function >>> -Wno-error-pointer-sign -Wno-error-shift-negative-value >>> -Wno-error-address-of-packed-member -mno-aes -mno-avx -std=iso9899:1999 >>> /usr/src/sys/amd64/amd64/genassym.c >>> In file included from /usr/src/sys/amd64/amd64/genassym.c:47: >>> /usr/src/sys/sys/bus.h:731:10: fatal error: 'bus_if.h' file not found >>> >>> so: >>> make bus_if.h >>> awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/bus_if.m -h >>> then the build works: >>> >>> MAKE=make sh /usr/src/sys/conf/newvers.sh pozo >>> --- vers.o --- >>> /usr/local/bin/ccache cc -c -O2 -pipe -fno-strict-aliasing -g -nostdinc -I. >>> -I/usr/src/sys -I/usr/src/sys/contrib/libfdt -D_KERNEL >>> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-omit-frame-pointer >>> -mno-omit-leaf-frame-pointer -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse >>> -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fwrapv >>> -fstack-protector -gdwarf-2 -Wall -Wredundant-decls -Wnested-externs >>> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual >>> -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ >>> -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas >>> -Wno-error-tautological-compare -Wno-error-empty-body >>> -Wno-error-parentheses-equality -Wno-error-unused-function >>> -Wno-error-pointer-sign -Wno-error-shift-negative-value >>> -Wno-error-address-of-packed-member -mno-aes -mno-avx -std=iso9899:1999 >>> vers.c >>> ctfconvert -L VERSION -g vers.o >>> --- kernel.full --- >>> linking kernel.full >>> ctfmerge -L VERSION -g -o kernel.full ... >>> text data bss dec hex filename >>> 8657083 805570 3350664 12813317 0xc38405 kernel.full >>> --- kernel.debug --- >>> objcopy --only-keep-debug kernel.full kernel.debug >>> --- kernel --- >>> objcopy --strip-debug --add-gnu-debuglink=kernel.debug kernel.full kernel >>> >>> somehow this needs to happen before genassym.c is compiled >>> this is a kernel without any modules >> I've got another report about this problem, but I can not reproduce it here with >> a clean kernel build of GENERIC. >> I am not sure what the problem is. >> Do you have anything unusual in make.conf, src.conf or your kernel configuration? >> > I get the same failures on 12.0-CURRENT amd64 r315794, even if build with > generic kernel and without make.conf and src.conf. Looks like it could be a timing issue because of a new dependency that is not declared in the make files. I am going to revert the commit while I am figuring out the details. -- Andriy Gapon