Date: Sun, 7 Jun 2009 11:58:44 +0800 From: Adrian Chadd <adrian@freebsd.org> To: Edwin Shao <poleris@gmail.com> Cc: freebsd-xen@freebsd.org Subject: Re: -current XEN build fails with WITNESS off Message-ID: <d763ac660906062058p2350291eqa773a3b92d3517f1@mail.gmail.com> In-Reply-To: <17ca67550906061819g635b6ddew5a95a9fea1311884@mail.gmail.com> References: <17ca67550906061819g635b6ddew5a95a9fea1311884@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
You absolutely want to run the witness checks; freebsd/xen is still in development. I'll commit the netfront fix though. Thanks! Adrian 2009/6/7 Edwin Shao <poleris@gmail.com>: > Hi all, > > I am running Adrian's Xen image on a pygrub domU and am building the > kernel targeted towards production use. With that in mind, commenting > out the lines: > #options =A0 =A0 =A0 =A0WITNESS =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # Enable = checks to detect > deadlocks and cycles > #options =A0 =A0 =A0 =A0WITNESS_SKIPSPIN =A0 =A0 =A0 =A0# Don't run witne= ss on > spinlocks for speed > > Yields the error: > In file included from /usr/src/sys/dev/xen/netfront/netfront.c:33: > /usr/src/sys/sys/sx.h:211:2: error: #error "LOCK_DEBUG not defined, > include <sys/lock.h> before <sys/sx.h>" > mkdep: compile failed > > This is reproducible, at the very least, between 20090520 and 20090606. > > A very simple fix is: > diff netfront.c netfront.old.c > 33d32 > < #include <sys/lock.h> > > Let me know if I am doing something stupidly wrong (as I've only been > running FreeBSD since yesterday) or if you need any more information. > > Thanks, > Edwin > > PS. If there is any interest, I can provide weekly or so kernel > builds. My config file is aimed towards use in a production > environment with jails use, and thus has debugging options off and > pf/vlan/NULLFS/FDESCFS enabled. > > > ---------- Error Log ---------- > > > -------------------------------------------------------------- >>>> Kernel build for XENNEKO started on Sat Jun =A06 20:55:49 EDT 2009 > -------------------------------------------------------------- > =3D=3D=3D> XENNEKO > mkdir -p /usr/obj/usr/src/sys > > -------------------------------------------------------------- >>>> stage 1: configuring the kernel > -------------------------------------------------------------- > cd /usr/src/sys/i386/conf; > PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/u= sr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:= /usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr= /sbin:/usr/bin > =A0config =A0-d /usr/obj/usr/src/sys/XENNEKO > /usr/src/sys/i386/conf/XENNEKO > Kernel build directory is /usr/obj/usr/src/sys/XENNEKO > Don't forget to do ``make cleandepend && make depend'' > > -------------------------------------------------------------- >>>> stage 2.1: cleaning up the object tree > -------------------------------------------------------------- > cd /usr/obj/usr/src/sys/XENNEKO; MAKEOBJDIRPREFIX=3D/usr/obj > MACHINE_ARCH=3Di386 =A0MACHINE=3Di386 =A0CPUTYPE=3Dpentiumpro > GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin > GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font > GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac > _SHLIBDIRPREFIX=3D/usr/obj/usr/src/tmp =A0VERSION=3D"FreeBSD 8.0-CURRENT > i386 800095" =A0INSTALL=3D"sh /usr/src/tools/install.sh" > PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/u= sr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:= /usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr= /sbin:/usr/bin > NO_CTF=3D1 make KERNEL=3Dkernel cleandir > rm -f *.o *.so *.So *.ko *.s eddep errs =A0kernel.debug kernel > kernel.symbols =A0linterrs makelinks tags vers.c =A0vnode_if.c vnode_if.h > vnode_if_newproto.h vnode_if_typedef.h =A0eisa_if.c mmcbr_if.c > mmcbus_if.c card_if.c power_if.c pci_if.c pcib_if.c g_part_if.c > isa_if.c bus_if.c clock_if.c cpufreq_if.c device_if.c linker_if.c > serdev_if.c xenbus_if.c acpi_if.c eisa_if.h mmcbr_if.h mmcbus_if.h > card_if.h power_if.h pci_if.h pcib_if.h g_part_if.h isa_if.h bus_if.h > clock_if.h cpufreq_if.h device_if.h linker_if.h serdev_if.h > xenbus_if.h acpi_if.h =A0pccarddevs.h > rm -f .depend machine > cd /usr/src/sys/modules; > MAKEOBJDIRPREFIX=3D/usr/obj/usr/src/sys/XENNEKO/modules > KMODDIR=3D/boot/kernel MODULES_OVERRIDE=3D"""" DEBUG_FLAGS=3D"-g" > MACHINE=3Di386 KERNBUILDDIR=3D"/usr/obj/usr/src/sys/XENNEKO" > SYSDIR=3D"/usr/src/sys" make =A0cleandir > > -------------------------------------------------------------- >>>> stage 2.2: rebuilding the object tree > -------------------------------------------------------------- > cd /usr/obj/usr/src/sys/XENNEKO; MAKEOBJDIRPREFIX=3D/usr/obj > MACHINE_ARCH=3Di386 =A0MACHINE=3Di386 =A0CPUTYPE=3Dpentiumpro > GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin > GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font > GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac > _SHLIBDIRPREFIX=3D/usr/obj/usr/src/tmp =A0VERSION=3D"FreeBSD 8.0-CURRENT > i386 800095" =A0INSTALL=3D"sh /usr/src/tools/install.sh" > PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/u= sr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:= /usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr= /sbin:/usr/bin > NO_CTF=3D1 make KERNEL=3Dkernel obj > cd /usr/src/sys/modules; > MAKEOBJDIRPREFIX=3D/usr/obj/usr/src/sys/XENNEKO/modules > KMODDIR=3D/boot/kernel MODULES_OVERRIDE=3D"""" DEBUG_FLAGS=3D"-g" > MACHINE=3Di386 KERNBUILDDIR=3D"/usr/obj/usr/src/sys/XENNEKO" > SYSDIR=3D"/usr/src/sys" make =A0obj > > -------------------------------------------------------------- >>>> stage 2.3: build tools > -------------------------------------------------------------- > cd /usr/obj/usr/src/sys/XENNEKO; > MAKESRCPATH=3D/usr/src/sys/dev/aic7xxx/aicasm =A0make SSP_CFLAGS=3D > -DNO_CPU_CFLAGS -DNO_CTF =A0-f /usr/src/sys/dev/aic7xxx/aicasm/Makefile > Warning: Object directory not changed from original /usr/obj/usr/src/sys/= XENNEKO > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign -c /usr/src/sys/dev/aic7xxx/aicasm/aicasm.c > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign -c /usr/src/sys/dev/aic7xxx/aicasm/aicasm_symbol.c > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign -c aicasm_gram.c > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign -c aicasm_macro_gram.c > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign -c aicasm_scan.c > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign -c aicasm_macro_scan.c > cc -O2 -fno-strict-aliasing -pipe -nostdinc -I/usr/include -I. > -I/usr/src/sys/dev/aic7xxx/aicasm -std=3Dgnu99 =A0-Wsystem-headers -Werro= r > -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual > -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter > -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls > -Wno-pointer-sign =A0-o aicasm aicasm.o aicasm_symbol.o aicasm_gram.o > aicasm_macro_gram.o aicasm_scan.o aicasm_macro_scan.o -ll > cd /usr/src/sys/modules/aic7xxx/aicasm; > MAKEOBJDIRPREFIX=3D/usr/obj/usr/src/sys/XENNEKO/modules =A0make > SSP_CFLAGS=3D -DNO_CPU_CFLAGS -DNO_CTF obj > cd /usr/src/sys/modules/aic7xxx/aicasm; > MAKEOBJDIRPREFIX=3D/usr/obj/usr/src/sys/XENNEKO/modules =A0make > SSP_CFLAGS=3D -DNO_CPU_CFLAGS -DNO_CTF depend > cd /usr/src/sys/modules/aic7xxx/aicasm; > MAKEOBJDIRPREFIX=3D/usr/obj/usr/src/sys/XENNEKO/modules =A0make > SSP_CFLAGS=3D -DNO_CPU_CFLAGS -DNO_CTF all > > -------------------------------------------------------------- >>>> stage 3.1: making dependencies > -------------------------------------------------------------- > cd /usr/obj/usr/src/sys/XENNEKO; MAKEOBJDIRPREFIX=3D/usr/obj > MACHINE_ARCH=3Di386 =A0MACHINE=3Di386 =A0CPUTYPE=3Dpentiumpro > GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin > GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font > GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac > _SHLIBDIRPREFIX=3D/usr/obj/usr/src/tmp =A0VERSION=3D"FreeBSD 8.0-CURRENT > i386 800095" =A0INSTALL=3D"sh /usr/src/tools/install.sh" > PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/u= sr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:= /usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr= /sbin:/usr/bin > NO_CTF=3D1 make KERNEL=3Dkernel depend -DNO_MODULES_OBJ > machine -> /usr/src/sys/i386/include > cc -c -O -pipe -march=3Dpentiumpro -std=3Dc99 -g -Wall -Wredundant-decls > -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes > -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign > -fformat-extensions -nostdinc -I. -I/usr/src/sys > -I/usr/src/sys/contrib/altq -I/usr/src/sys/contrib/ipfilter > -I/usr/src/sys/contrib/pf -I/usr/src/sys/dev/ath > -I/usr/src/sys/dev/ath/ath_hal -I/usr/src/sys/contrib/ngatm > -I/usr/src/sys/dev/twa -I/usr/src/sys/gnu/fs/xfs/FreeBSD > -I/usr/src/sys/gnu/fs/xfs/FreeBSD/support -I/usr/src/sys/gnu/fs/xfs > -I/usr/src/sys/contrib/opensolaris/compat -I/usr/src/sys/dev/cxgb > -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h > -finline-limit=3D8000 --param inline-unit-growth=3D100 --param > large-function-growth=3D1000 -mno-align-long-strings > -mpreferred-stack-boundary=3D2 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 > -mno-sse3 -ffreestanding -fstack-protector > /usr/src/sys/i386/i386/genassym.c > NM=3D'nm' sh /usr/src/sys/kern/genassym.sh genassym.o > assym.s > awk -f /usr/src/sys/tools/vnode_if.awk /usr/src/sys/kern/vnode_if.src -p > awk -f /usr/src/sys/tools/vnode_if.awk /usr/src/sys/kern/vnode_if.src -q > awk -f /usr/src/sys/tools/vnode_if.awk /usr/src/sys/kern/vnode_if.src -h > awk -f /usr/src/sys/tools/pccarddevs2h.awk /usr/src/sys/dev/pccard/pccard= devs > awk -f /usr/src/sys/tools/vnode_if.awk /usr/src/sys/kern/vnode_if.src -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/eisa/eisa_if.m = -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/mmc/mmcbr_if.m = -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/mmc/mmcbus_if.m= -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pccard/card_if.= m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pccard/power_if= .m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pci/pci_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pci/pcib_if.m -= c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/geom/part/g_part_if= .m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/isa/isa_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/bus_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/clock_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/cpufreq_if.m -= c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/device_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/linker_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/serdev_if.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/xen/xenbus/xenbus_i= f.m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/acpica/acpi_if.= m -c > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/eisa/eisa_if.m = -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/mmc/mmcbr_if.m = -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/mmc/mmcbus_if.m= -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pccard/card_if.= m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pccard/power_if= .m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pci/pci_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/pci/pcib_if.m -= h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/geom/part/g_part_if= .m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/isa/isa_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/bus_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/clock_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/cpufreq_if.m -= h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/device_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/linker_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/kern/serdev_if.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/xen/xenbus/xenbus_i= f.m -h > awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/acpica/acpi_if.= m -h > rm -f .newdep > make -V CFILES -V SYSTEM_CFILES -V GEN_CFILES | =A0MKDEP_CPP=3D"cc -E" > CC=3D"cc" xargs mkdep -a -f .newdep -O -pipe -march=3Dpentiumpro -std=3Dc= 99 > -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual =A0-Wundef > -Wno-pointer-sign -fformat-extensions -nostdinc =A0-I. -I/usr/src/sys > -I/usr/src/sys/contrib/altq -I/usr/src/sys/contrib/ipfilter > -I/usr/src/sys/contrib/pf -I/usr/src/sys/dev/ath > -I/usr/src/sys/dev/ath/ath_hal -I/usr/src/sys/contrib/ngatm > -I/usr/src/sys/dev/twa -I/usr/src/sys/gnu/fs/xfs/FreeBSD > -I/usr/src/sys/gnu/fs/xfs/FreeBSD/support -I/usr/src/sys/gnu/fs/xfs > -I/usr/src/sys/contrib/opensolaris/compat -I/usr/src/sys/dev/cxgb > -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h > -fno-common -finline-limit=3D8000 --param inline-unit-growth=3D100 --para= m > large-function-growth=3D1000 =A0-mno-align-long-strings > -mpreferred-stack-boundary=3D2 =A0-mno-mmx -mno-3dnow -mno-sse -mno-sse2 > -mno-sse3 -ffreestanding -fstack-protec! > =A0tor > *** Error code 1 > > Stop in /usr/obj/usr/src/sys/XENNEKO. > *** Error code 1 > > Stop in /usr/src. > *** Error code 1 > > Stop in /usr/src. > > In file included from /usr/src/sys/dev/xen/netfront/netfront.c:33: > /usr/src/sys/sys/sx.h:211:2: error: #error "LOCK_DEBUG not defined, > include <sys/lock.h> before <sys/sx.h>" > mkdep: compile failed > _______________________________________________ > freebsd-xen@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-xen > To unsubscribe, send any mail to "freebsd-xen-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d763ac660906062058p2350291eqa773a3b92d3517f1>