Todd Deshane
2007-Jul-28 06:03 UTC
[Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
Hi All, I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I am getting the following compile error. Any suggestions on how to get it to compile correctly? I also get the same error compiling under 32bit, so that is not the problem. if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map-b /var/hg/repos/xen- unstable.hg/dist/install -r 2.6.18-xen; fi make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- linux-2.6.18-xen_x86_64'' make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 INSTALL_PATH=/var/hg/repos/xen-unstable.hg/dist/install vmlinuz make[3]: Entering directory `/var/hg/repos/xen-unstable.hg/build- linux-2.6.18-xen_x86_64 '' make -C /var/hg/repos/linux-2.6.18-xen.hg O=/var/hg/repos/xen-unstable.hg /build-linux-2.6.18-xen_x86_64 vmlinuz Using /var/hg/repos/linux-2.6.18-xen.hg as source for kernel GEN /var/hg/repos/xen-unstable.hg /build- linux-2.6.18-xen_x86_64/Makefile CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC arch/x86_64/kernel/process.o /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c: In function ''exit_thread'': /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: ''per_cpu__init_tss'' undeclared (first use in this function) /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c:349: error: (Each undeclared identifier is reported only once /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: for each function it appears in.) /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: warning: type defaults to ''int'' in declaration of ''type name'' /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: invalid type argument of ''unary *'' /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: dereferencing pointer to incomplete type /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In function ''__switch_to'': /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: ''per_cpu__init_tss'' undeclared (first use in this function) /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: warning: type defaults to ''int'' in declaration of ''type name'' /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: invalid type argument of ''unary *'' /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: dereferencing pointer to incomplete type /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: dereferencing pointer to incomplete type /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: dereferencing pointer to incomplete type /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: dereferencing pointer to incomplete type make[6]: *** [arch/x86_64/kernel/process.o] Error 1 make[5]: *** [arch/x86_64/kernel] Error 2 make[4]: *** [vmlinuz] Error 2 make[3]: *** [vmlinuz] Error 2 make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- linux-2.6.18-xen_x86_64'' make[2]: *** [build] Error 2 make[2]: Leaving directory `/var/hg/repos/xen- unstable.hg'' make[1]: *** [linux-2.6-xen-install] Error 2 make[1]: Leaving directory `/var/hg/repos/xen-unstable.hg'' make: *** [install-kernels] Error 1 Thanks, Todd _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Keir Fraser
2007-Jul-28 07:41 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
You need to do a completely clean build (make mrproper at the root of your Xen repository, thus deleting old Linux build trees). You are not correctly picking up *-xen.c versions of files. -- Keir On 28/7/07 07:03, "Todd Deshane" <deshantm@gmail.com> wrote:> Hi All, > > I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I am getting > the following compile error. Any suggestions on how to get it to compile > correctly? > > I also get the same error compiling under 32bit, so that is not the problem. > > if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map > -b /var/hg/repos/xen-unstable.hg/dist/install -r 2.6.18-xen ; fi > make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 > INSTALL_PATH=/var/hg/repos/xen-unstable.hg/dist/install vmlinuz > make[3]: Entering directory > `/var/hg/repos/xen-unstable.hg/build-linux-2.6.18-xen_x86_64 '' > make -C /var/hg/repos/linux-2.6.18-xen.hg > O=/var/hg/repos/xen-unstable.hg/build-linux-2.6.18-xen_x86_64 vmlinuz > Using /var/hg/repos/linux-2.6.18-xen.hg as source for kernel > GEN /var/hg/repos/xen-unstable.hg > /build-linux-2.6.18-xen_x86_64/Makefile > CHK include/linux/version.h > CHK include/linux/utsrelease.h > CHK include/linux/compile.h > CC arch/x86_64/kernel/process.o > /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c: In function > ''exit_thread'': > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > ''per_cpu__init_tss'' undeclared (first use in this function) > /var/hg/repos/linux- 2.6.18-xen.hg /arch/x86_64/kernel/process.c:349: error: > (Each undeclared identifier is reported only once > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: for > each function it appears in.) > /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: warning: > type defaults to ''int'' in declaration of ''type name'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > invalid type argument of ''unary *'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In function > ''__switch_to'': > /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: > ''per_cpu__init_tss'' undeclared (first use in this function) > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: warning: > type defaults to ''int'' in declaration of ''type name'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: > invalid type argument of ''unary *'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: > dereferencing pointer to incomplete type > make[6]: *** [arch/x86_64/kernel/process.o] Error 1 > make[5]: *** [arch/x86_64/kernel] Error 2 > make[4]: *** [vmlinuz] Error 2 > make[3]: *** [vmlinuz] Error 2 > make[3]: Leaving directory > `/var/hg/repos/xen-unstable.hg/build-linux-2.6.18-xen_x86_64'' > make[2]: *** [build] Error 2 > make[2]: Leaving directory `/var/hg/repos/xen- unstable.hg'' > make[1]: *** [linux-2.6-xen-install] Error 2 > make[1]: Leaving directory `/var/hg/repos/xen-unstable.hg'' > make: *** [install-kernels] Error 1 > > Thanks, > Todd > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Todd Deshane
2007-Jul-28 20:32 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
On 7/28/07, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote:> > You need to do a completely clean build (make mrproper at the root of > your Xen repository, thus deleting old Linux build trees). You are not > correctly picking up *-xen.c versions of files. >I did the make mrproper, but I still get the problem. I pulled them from http://xenbits.xensource.com/ directly, and still after running the make mrproper, I get the same errors. Any other suggestions? Thanks, Todd -- Keir> > On 28/7/07 07:03, "Todd Deshane" <deshantm@gmail.com> wrote: > > Hi All, > > I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I am > getting the following compile error. Any suggestions on how to get it to > compile correctly? > > I also get the same error compiling under 32bit, so that is not the > problem. > > if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F > System.map -b /var/hg/repos/xen-unstable.hg/dist/install -r 2.6.18-xen ; > fi > make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 > INSTALL_PATH=/var/hg/repos/xen-unstable.hg/dist/install vmlinuz > make[3]: Entering directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64 '' > make -C /var/hg/repos/linux-2.6.18-xen.hg O=/var/hg/repos/xen-unstable.hg > /build-linux-2.6.18-xen_x86_64 vmlinuz > Using /var/hg/repos/linux-2.6.18-xen.hg as source for kernel > GEN /var/hg/repos/xen-unstable.hg /build- > linux-2.6.18-xen_x86_64/Makefile > CHK include/linux/version.h > CHK include/linux/utsrelease.h > CHK include/linux/compile.h > CC arch/x86_64/kernel/process.o > /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c: In > function ''exit_thread'': > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > ''per_cpu__init_tss'' undeclared (first use in this function) > /var/hg/repos/linux- 2.6.18-xen.hg /arch/x86_64/kernel/process.c:349: > error: (Each undeclared identifier is reported only once > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > for each function it appears in.) > /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > warning: type defaults to ''int'' in declaration of ''type name'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > invalid type argument of ''unary *'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In > function ''__switch_to'': > /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > error: ''per_cpu__init_tss'' undeclared (first use in this function) > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > warning: type defaults to ''int'' in declaration of ''type name'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: > invalid type argument of ''unary *'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: > dereferencing pointer to incomplete type > make[6]: *** [arch/x86_64/kernel/process.o] Error 1 > make[5]: *** [arch/x86_64/kernel] Error 2 > make[4]: *** [vmlinuz] Error 2 > make[3]: *** [vmlinuz] Error 2 > make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make[2]: *** [build] Error 2 > make[2]: Leaving directory `/var/hg/repos/xen- unstable.hg'' > make[1]: *** [linux-2.6-xen-install] Error 2 > make[1]: Leaving directory `/var/hg/repos/xen-unstable.hg'' > make: *** [install-kernels] Error 1 > > Thanks, > Todd > > > ------------------------------ > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Keir Fraser
2007-Jul-29 07:17 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
If you revert changesets 131 and 130 in your linux-2.6.18-xen.hg tree, does the problem go away? Another thing to try is: you¹ll get more info about exactly what the build system is doing if you set V=1¹ while building Linux. -- Keir On 28/7/07 21:32, "Todd Deshane" <deshantm@gmail.com> wrote:> > > On 7/28/07, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote: >> You need to do a completely clean build (make mrproper at the root of your >> Xen repository, thus deleting old Linux build trees). You are not correctly >> picking up *- xen.c versions of files. > > I did the make mrproper, but I still get the problem. I pulled them from > http://xenbits.xensource.com/ directly, and still after running the make > mrproper, I get the same errors. > > Any other suggestions? > > Thanks, > Todd > > >> -- Keir >> >> >> On 28/7/07 07:03, "Todd Deshane" <deshantm@gmail.com> wrote: >> >>> Hi All, >>> >>> I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I am >>> getting the following compile error. Any suggestions on how to get it to >>> compile correctly? >>> >>> I also get the same error compiling under 32bit, so that is not the problem. >>> >>> if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map >>> -b /var/hg/repos/xen-unstable.hg/dist/install -r 2.6.18-xen ; fi >>> make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- >>> linux-2.6.18-xen_x86_64'' >>> make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 >>> INSTALL_PATH=/var/hg/repos/xen-unstable.hg/dist/install vmlinuz >>> make[3]: Entering directory >>> `/var/hg/repos/xen-unstable.hg/build-linux-2.6.18-xen_x86_64 '' >>> make -C /var/hg/repos/linux-2.6.18-xen.hg >>> O=/var/hg/repos/xen-unstable.hg/build-linux-2.6.18-xen_x86_64 vmlinuz >>> Using /var/hg/repos/linux-2.6.18-xen.hg as source for kernel >>> GEN /var/hg/repos/xen-unstable.hg >>> /build-linux-2.6.18-xen_x86_64/Makefile >>> CHK include/linux/version.h >>> CHK include/linux/utsrelease.h >>> CHK include/linux/compile.h >>> CC arch/x86_64/kernel/process.o >>> /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c: In function >>> ''exit_thread'': >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: >>> ''per_cpu__init_tss'' undeclared (first use in this function) >>> /var/hg/repos/linux- 2.6.18-xen.hg /arch/x86_64/kernel/process.c:349: error: >>> (Each undeclared identifier is reported only once >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: >>> for each function it appears in.) >>> /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: >>> warning: type defaults to ''int'' in declaration of ''type name'' >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: >>> invalid type argument of ''unary *'' >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: >>> dereferencing pointer to incomplete type >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In function >>> ''__switch_to'': >>> /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: >>> ''per_cpu__init_tss'' undeclared (first use in this function) >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: warning: >>> type defaults to ''int'' in declaration of ''type name'' >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: >>> invalid type argument of ''unary *'' >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: >>> dereferencing pointer to incomplete type >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: >>> dereferencing pointer to incomplete type >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: >>> dereferencing pointer to incomplete type >>> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: >>> dereferencing pointer to incomplete type >>> make[6]: *** [arch/x86_64/kernel/process.o] Error 1 >>> make[5]: *** [arch/x86_64/kernel] Error 2 >>> make[4]: *** [vmlinuz] Error 2 >>> make[3]: *** [vmlinuz] Error 2 >>> make[3]: Leaving directory >>> `/var/hg/repos/xen-unstable.hg/build-linux-2.6.18-xen_x86_64'' >>> make[2]: *** [build] Error 2 >>> make[2]: Leaving directory `/var/hg/repos/xen- unstable.hg'' >>> make[1]: *** [linux-2.6-xen-install] Error 2 >>> make[1]: Leaving directory `/var/hg/repos/xen-unstable.hg'' >>> make: *** [install-kernels] Error 1 >>> >>> Thanks, >>> Todd >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Todd Deshane
2007-Jul-30 23:16 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
On 7/29/07, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote:> > If you revert changesets 131 and 130 in your linux-2.6.18-xen.hg tree, > does the problem go away? Another thing to try is: you''ll get more info > about exactly what the build system is doing if you set ''V=1'' while building > Linux. >I reverted 131 and 130, and recompiled with KBUILD_VERBOSE=1 make verbose=y Still the same error, but the verbose version is below. Has there been any changeset that may fix this? Is anybody else having any similar problems? Maybe it is something with my setup... I am running a relatively vanilla version of Ubuntu 7.04, with build-essential installed. Any other suggestions? Thanks, Todd if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map-b /home/deshantm/devel/xen- unstable.hg/dist/install -r 2.6.18-xen; fi make[3]: Leaving directory `/home/deshantm/devel/xen-unstable.hg/build- linux-2.6.18-xen_x86_64'' make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 INSTALL_PATH=/home/deshantm/devel/xen-unstable.hg/dist/install vmlinuz make[3]: Entering directory `/home/deshantm/devel/xen-unstable.hg/build- linux-2.6.18-xen_x86_64'' make -C /home/deshantm/devel/linux-2.6.18-xen.hg O=/home/deshantm/devel/xen- unstable.hg/build-linux-2.6.18-xen_x86_64 vmlinuz make -C /home/deshantm/devel/xen-unstable.hg/build-linux-2.6.18-xen_x86_64 \ KBUILD_SRC=/home/deshantm/devel/linux-2.6.18-xen.hg \ KBUILD_EXTMOD="" -f /home/deshantm/devel/linux-2.6.18-xen.hg/Makefile vmlinuz rm -f include/config/kernel.release echo 2.6.18-xen > include/config/kernel.release Using /home/deshantm/devel/linux-2.6.18-xen.hg as source for kernel if [ -f /home/deshantm/devel/linux-2.6.18-xen.hg/.config -o -d /home/deshantm/devel/linux-2.6.18-xen.hg/include/config ]; then \ echo " /home/deshantm/devel/linux-2.6.18-xen.hg is not clean, please run ''make mrproper''";\ echo " in the ''/home/deshantm/devel/linux-2.6.18-xen.hg'' directory.";\ /bin/false; \ fi; if [ ! -d include2 ]; then mkdir -p include2; fi; ln -fsn /home/deshantm/devel/linux-2.6.18-xen.hg/include/asm-x86_64 include2/asm /bin/bash /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/mkmakefile \ /home/deshantm/devel/linux-2.6.18-xen.hg/home/deshantm/devel/xen- unstable.hg/build-linux-2.6.18-xen_x86_64 2 6 GEN /home/deshantm/devel/xen-unstable.hg/build- linux-2.6.18-xen_x86_64/Makefile set -e; echo '' CHK include/linux/version.h''; mkdir -p include/linux/; (echo \#define LINUX_VERSION_CODE 132626; echo ''#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'';) < /home/deshantm/devel/linux-2.6.18-xen.hg/Makefile > include/linux/version.h.tmp; if [ -r include/linux/version.h ] && cmp -s include/linux/version.h include/linux/version.h.tmp; then rm -f include/linux/version.h.tmp; else echo '' UPD include/linux/version.h''; mv -f include/linux/version.h.tmp include/linux/version.h; fi CHK include/linux/version.h set -e; echo '' CHK include/linux/utsrelease.h''; mkdir -p include/linux/; if [ `echo -n "2.6.18-xen" | wc -c ` -gt 64 ]; then echo ''"2.6.18-xen" exceeds 64 characters'' >&2; exit 1; fi; (echo \#define UTS_RELEASE \"2.6.18-xen\";) < include/config/kernel.release > include/linux/utsrelease.h.tmp; if [ -r include/linux/utsrelease.h ] && cmp -s include/linux/utsrelease.h include/linux/utsrelease.h.tmp; then rm -f include/linux/utsrelease.h.tmp; else echo '' UPD include/linux/utsrelease.h''; mv -f include/linux/utsrelease.h.tmp include/linux/utsrelease.h; fi CHK include/linux/utsrelease.h make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=scripts/basic make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=. mkdir -p arch/x86_64/kernel/ make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=scripts make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=scripts/genksyms make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=scripts/mod make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=init CHK include/linux/compile.h /bin/bash /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/mkcompile_h include/linux/compile.h \ "x86_64" "y" "" "gcc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Os -mtune=generic -m64 -mno-red-zone -mcmodel=kernel -pipe -fno-reorder-blocks -Wno-sign-compare -fno-asynchronous-unwind-tables -funit-at-a-time -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fomit-frame-pointer -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign" make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=usr /bin/bash /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/gen_initramfs_list.sh -l -d > usr/.initramfs_data.cpio.gz.d make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build obj=arch/x86_64/kernel gcc -Wp,-MD,arch/x86_64/kernel/.process.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/4.1.2/include -Iinclude2/asm/mach-xen -D__KERNEL__ -Iinclude -Iinclude2 -I/home/deshantm/devel/linux-2.6.18-xen.hg/include -include include/linux/autoconf.h -D__XEN_INTERFACE_VERSION__=0x00030205 -I/home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel -Iarch/x86_64/kernel -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Os -mtune=generic -m64 -mno-red-zone -mcmodel=kernel -pipe -fno-reorder-blocks -Wno-sign-compare -fno-asynchronous-unwind-tables -funit-at-a-time -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fomit-frame-pointer -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(process)" -D"KBUILD_MODNAME=KBUILD_STR(process)" -c -o arch/x86_64/kernel/.tmp_process.o /home/deshantm/devel/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In function ''exit_thread'': /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: ''per_cpu__init_tss'' undeclared (first use in this function) /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: (Each undeclared identifier is reported only once /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: for each function it appears in.) /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: warning: type defaults to ''int'' in declaration of ''type name'' /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: invalid type argument of ''unary *'' /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: dereferencing pointer to incomplete type /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In function ''__switch_to'': /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: ''per_cpu__init_tss'' undeclared (first use in this function) /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: warning: type defaults to ''int'' in declaration of ''type name'' /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: invalid type argument of ''unary *'' /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: dereferencing pointer to incomplete type /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: dereferencing pointer to incomplete type /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: dereferencing pointer to incomplete type /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: dereferencing pointer to incomplete type make[6]: *** [arch/x86_64/kernel/process.o] Error 1 make[5]: *** [arch/x86_64/kernel] Error 2 make[4]: *** [vmlinuz] Error 2 make[3]: *** [vmlinuz] Error 2 make[3]: Leaving directory `/home/deshantm/devel/xen-unstable.hg/build- linux-2.6.18-xen_x86_64'' make[2]: *** [build] Error 2 make[2]: Leaving directory `/home/deshantm/devel/xen-unstable.hg'' make[1]: *** [linux-2.6-xen-install] Error 2 make[1]: Leaving directory `/home/deshantm/devel/xen-unstable.hg'' make: *** [install-kernels] Error 1 -- Keir> > On 28/7/07 21:32, "Todd Deshane" <deshantm@gmail.com> wrote: > > > > On 7/28/07, *Keir Fraser* <Keir.Fraser@cl.cam.ac.uk> wrote: > > You need to do a completely clean build (make mrproper at the root of your > Xen repository, thus deleting old Linux build trees). You are not correctly > picking up *- xen.c versions of files. > > > I did the make mrproper, but I still get the problem. I pulled them from > http://xenbits.xensource.com/ directly, and still after running the make > mrproper, I get the same errors. > > Any other suggestions? > > Thanks, > Todd > > > -- Keir > > > On 28/7/07 07:03, "Todd Deshane" <deshantm@gmail.com> wrote: > > Hi All, > > I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I am > getting the following compile error. Any suggestions on how to get it to > compile correctly? > > I also get the same error compiling under 32bit, so that is not the > problem. > > if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F > System.map -b /var/hg/repos/xen-unstable.hg/dist/install -r 2.6.18-xen ; > fi > make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 > INSTALL_PATH=/var/hg/repos/xen-unstable.hg/dist/install vmlinuz > make[3]: Entering directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64 '' > make -C /var/hg/repos/linux-2.6.18-xen.hg O=/var/hg/repos/xen-unstable.hg > /build-linux-2.6.18-xen_x86_64 vmlinuz > Using /var/hg/repos/linux-2.6.18-xen.hg as source for kernel > GEN /var/hg/repos/xen-unstable.hg /build- > linux-2.6.18-xen_x86_64/Makefile > CHK include/linux/version.h > CHK include/linux/utsrelease.h > CHK include/linux/compile.h > CC arch/x86_64/kernel/process.o > /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c: In > function ''exit_thread'': > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > ''per_cpu__init_tss'' undeclared (first use in this function) > /var/hg/repos/linux- 2.6.18-xen.hg /arch/x86_64/kernel/process.c:349: > error: (Each undeclared identifier is reported only once > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > for each function it appears in.) > /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > warning: type defaults to ''int'' in declaration of ''type name'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: > invalid type argument of ''unary *'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In > function ''__switch_to'': > /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > error: ''per_cpu__init_tss'' undeclared (first use in this function) > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > warning: type defaults to ''int'' in declaration of ''type name'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: > invalid type argument of ''unary *'' > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: > dereferencing pointer to incomplete type > /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: > dereferencing pointer to incomplete type > make[6]: *** [arch/x86_64/kernel/process.o] Error 1 > make[5]: *** [arch/x86_64/kernel] Error 2 > make[4]: *** [vmlinuz] Error 2 > make[3]: *** [vmlinuz] Error 2 > make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make[2]: *** [build] Error 2 > make[2]: Leaving directory `/var/hg/repos/xen- unstable.hg'' > make[1]: *** [linux-2.6-xen-install] Error 2 > make[1]: Leaving directory `/var/hg/repos/xen-unstable.hg'' > make: *** [install-kernels] Error 1 > > Thanks, > Todd > > > ------------------------------ > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > > > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Yoshiaki Tamura
2007-Aug-03 10:25 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
Hi, I got the same error when I built changeset 152 of linux-2.6.18-xen.hg on debian etch i386 machine. This problem occurred after changeset 130 and 131. The following patch reverts changeset 130 and changeset 131 manually. I hope this is useful for someone. Thanks, Yoshi Tamura --- diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/Makefile --- a/arch/i386/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -116,6 +116,7 @@ PHONY += zImage bzImage compressed zlilo ifdef CONFIG_XEN CPPFLAGS := -Iinclude$(if $(KBUILD_SRC),2)/asm/mach-xen $(CPPFLAGS) +head-y := arch/i386/kernel/head-xen.o arch/i386/kernel/init_task-xen.o boot := arch/i386/boot-xen .PHONY: vmlinuz all: vmlinuz diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/Makefile --- a/arch/i386/kernel/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/kernel/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -43,7 +43,12 @@ EXTRA_AFLAGS := -traditional EXTRA_AFLAGS := -traditional obj-$(CONFIG_SCx200) += scx200.o -obj-$(CONFIG_XEN) += fixup.o + +ifdef CONFIG_XEN +vsyscall_note := vsyscall-note-xen.o +else +vsyscall_note := vsyscall-note.o +endif # vsyscall.o contains the vsyscall DSO images as __initdata. # We must build both images before we can assemble it. @@ -66,7 +71,7 @@ SYSCFLAGS_vsyscall-int80.so = $(vsyscall $(obj)/vsyscall-int80.so $(obj)/vsyscall-sysenter.so: \ $(obj)/vsyscall-%.so: $(src)/vsyscall.lds \ - $(obj)/vsyscall-%.o $(obj)/vsyscall-note.o FORCE + $(obj)/vsyscall-%.o $(obj)/$(vsyscall_note) FORCE $(call if_changed,syscall) # We also create a special relocatable object that should mirror the symbol @@ -78,11 +83,20 @@ extra-y += vsyscall-syms.o SYSCFLAGS_vsyscall-syms.o = -r $(obj)/vsyscall-syms.o: $(src)/vsyscall.lds \ - $(obj)/vsyscall-sysenter.o $(obj)/vsyscall-note.o FORCE + $(obj)/vsyscall-sysenter.o $(obj)/$(vsyscall_note) FORCE $(call if_changed,syscall) -early_printk-y += ../../x86_64/kernel/early_printk.o k8-y += ../../x86_64/kernel/k8.o -disabled-obj-$(CONFIG_XEN) := i8259.o reboot.o smpboot.o trampoline.o -%/head.o %/head.s: $(if $(CONFIG_XEN),EXTRA_AFLAGS,dummy) :+ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen + +obj-y += fixup.o +microcode-$(subst m,y,$(CONFIG_MICROCODE)) := microcode-xen.o +n-obj-xen := i8259.o timers/ reboot.o smpboot.o trampoline.o + +obj-y := $(call filterxen, $(obj-y), $(n-obj-xen)) +obj-y := $(call cherrypickxen, $(obj-y)) +extra-y := $(call cherrypickxen, $(extra-y)) +%/head-xen.o %/head-xen.s: EXTRA_AFLAGS :+endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/acpi/Makefile --- a/arch/i386/kernel/acpi/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/kernel/acpi/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -6,3 +6,7 @@ obj-y += cstate.o processor.o obj-y += cstate.o processor.o endif +ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen +obj-y := $(call cherrypickxen, $(obj-y), $(src)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/cpu/Makefile --- a/arch/i386/kernel/cpu/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/kernel/cpu/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -18,3 +18,7 @@ obj-$(CONFIG_MTRR) += mtrr/ obj-$(CONFIG_MTRR) += mtrr/ obj-$(CONFIG_CPU_FREQ) += cpufreq/ +ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen +obj-y := $(call cherrypickxen, $(obj-y), $(src)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/cpu/mtrr/Makefile --- a/arch/i386/kernel/cpu/mtrr/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/kernel/cpu/mtrr/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -3,4 +3,10 @@ obj-y += cyrix.o obj-y += cyrix.o obj-y += centaur.o -obj-$(CONFIG_XEN) := main.o if.o +ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen +n-obj-xen := generic.o state.o amd.o cyrix.o centaur.o + +obj-y := $(call filterxen, $(obj-y), $(n-obj-xen)) +obj-y := $(call cherrypickxen, $(obj-y)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/mm/Makefile --- a/arch/i386/mm/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/mm/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -8,4 +8,11 @@ obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpag obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o obj-$(CONFIG_HIGHMEM) += highmem.o obj-$(CONFIG_BOOT_IOREMAP) += boot_ioremap.o -obj-$(CONFIG_XEN) += hypervisor.o + +ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen + +obj-y += hypervisor.o + +obj-y := $(call cherrypickxen, $(obj-y)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/pci/Makefile --- a/arch/i386/pci/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/i386/pci/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -16,3 +16,8 @@ pci-$(CONFIG_X86_NUMAQ) := numa.o irq.o pci-$(CONFIG_X86_NUMAQ) := numa.o irq.o obj-y += $(pci-y) common.o + +ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen +obj-y := $(call cherrypickxen, $(obj-y)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/Makefile --- a/arch/x86_64/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/x86_64/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -80,6 +80,7 @@ PHONY += bzImage bzlilo install archmrpr ifdef CONFIG_XEN CPPFLAGS := -Iinclude$(if $(KBUILD_SRC),2)/asm/mach-xen $(CPPFLAGS) +head-y := arch/x86_64/kernel/head-xen.o arch/x86_64/kernel/head64-xen.o arch/x86_64/kernel/init_task.o LDFLAGS_vmlinux := -e startup_64 boot := arch/i386/boot-xen .PHONY: vmlinuz diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/ia32/Makefile --- a/arch/x86_64/ia32/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/x86_64/ia32/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -37,8 +37,15 @@ AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32 ifdef CONFIG_XEN AFLAGS_vsyscall-int80.o = -m32 -Wa,-32 -Iarch/i386/kernel -CFLAGS_syscall32.o += -DUSE_INT80 -AFLAGS_syscall32_syscall.o += -DUSE_INT80 +CFLAGS_syscall32-xen.o += -DUSE_INT80 +AFLAGS_syscall32_syscall-xen.o += -DUSE_INT80 -$(obj)/syscall32_syscall.o: $(obj)/vsyscall-int80.so +$(obj)/syscall32_syscall-xen.o: \ + $(foreach F,int80 sysenter syscall,$(obj)/vsyscall-$F.so) + +targets := $(foreach F,int80 sysenter syscall,vsyscall-$F.o vsyscall-$F.so) + +include $(srctree)/scripts/Makefile.xen + +obj-y := $(call cherrypickxen, $(obj-y)) endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/kernel/Makefile --- a/arch/x86_64/kernel/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/x86_64/kernel/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -57,8 +57,18 @@ msr-$(subst m,y,$(CONFIG_X86_MSR)) += . msr-$(subst m,y,$(CONFIG_X86_MSR)) += ../../i386/kernel/msr.o alternative-y += ../../i386/kernel/alternative.o -time-$(CONFIG_XEN) += ../../i386/kernel/time.o -pci-dma-$(CONFIG_XEN) += ../../i386/kernel/pci-dma.o +ifdef CONFIG_XEN +time-y += ../../i386/kernel/time-xen.o +pci-dma-y += ../../i386/kernel/pci-dma-xen.o +microcode-$(subst m,y,$(CONFIG_MICROCODE)) := ../../i386/kernel/microcode-xen.o +quirks-y := ../../i386/kernel/quirks-xen.o -disabled-obj-$(CONFIG_XEN) := i8259.o reboot.o smpboot.o trampoline.o -%/head.o %/head.s: $(if $(CONFIG_XEN),EXTRA_AFLAGS,dummy) :+n-obj-xen := i8259.o reboot.o i8237.o smpboot.o trampoline.o + +include $(srctree)/scripts/Makefile.xen + +obj-y := $(call filterxen, $(obj-y), $(n-obj-xen)) +obj-y := $(call cherrypickxen, $(obj-y)) +extra-y := $(call cherrypickxen, $(extra-y)) +%/head-xen.o %/head-xen.s: EXTRA_AFLAGS :+endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/mm/Makefile --- a/arch/x86_64/mm/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/x86_64/mm/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -7,8 +7,15 @@ obj-$(CONFIG_NUMA) += numa.o obj-$(CONFIG_NUMA) += numa.o obj-$(CONFIG_K8_NUMA) += k8topology.o obj-$(CONFIG_ACPI_NUMA) += srat.o -obj-$(CONFIG_XEN) += hypervisor.o hugetlbpage-y = ../../i386/mm/hugetlbpage.o -ioremap-$(CONFIG_XEN) := ../../i386/mm/ioremap.o -hypervisor-y := ../../i386/mm/hypervisor.o + +ifdef CONFIG_XEN +include $(srctree)/scripts/Makefile.xen + +ioremap-y += ../../i386/mm/ioremap-xen.o +hypervisor-y += ../../i386/mm/hypervisor.o +obj-y += hypervisor.o + +obj-y := $(call cherrypickxen, $(obj-y)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/pci/Makefile --- a/arch/x86_64/pci/Makefile Fri Jul 13 13:35:06 2007 +0100 +++ b/arch/x86_64/pci/Makefile Thu Jul 12 16:05:09 2007 +0100 @@ -28,3 +28,10 @@ fixup-y += ../../i386/pci/fixup.o fixup-y += ../../i386/pci/fixup.o i386-y += ../../i386/pci/i386.o init-y += ../../i386/pci/init.o + +ifdef CONFIG_XEN +irq-y := ../../i386/pci/irq-xen.o +include $(srctree)/scripts/Makefile.xen + +obj-y := $(call cherrypickxen, $(obj-y)) +endif diff -r 50477b1b3016 -r 670f8d5305d2 scripts/Makefile.build --- a/scripts/Makefile.build Fri Jul 13 13:35:06 2007 +0100 +++ b/scripts/Makefile.build Thu Jul 12 16:05:09 2007 +0100 @@ -66,18 +66,6 @@ endif ifndef obj $(warning kbuild: Makefile.build is included improperly) -endif - -ifeq ($(CONFIG_XEN),y) -$(objtree)/scripts/Makefile.xen: $(srctree)/scripts/Makefile.xen.awk $(srctree)/scripts/Makefile.build - @echo '' Updating $@'' - @$(AWK) -f $< $(filter-out $<,$^) >$@ - -xen-src-single-used-m := $(patsubst $(srctree)/%,%,$(wildcard $(addprefix $(srctree)/,$(single-used-m:.o=-xen.c)))) -xen-single-used-m := $(xen-src-single-used-m:-xen.c=.o) -single-used-m := $(filter-out $(xen-single-used-m),$(single-used-m)) - --include $(objtree)/scripts/Makefile.xen endif # ==========================================================================diff -r 50477b1b3016 -r 670f8d5305d2 scripts/Makefile.lib --- a/scripts/Makefile.lib Fri Jul 13 13:35:06 2007 +0100 +++ b/scripts/Makefile.lib Thu Jul 12 16:05:09 2007 +0100 @@ -12,12 +12,6 @@ obj-m := $(filter-out $(obj-y),$(obj-m)) # Filter out objects already built-in lib-y := $(filter-out $(obj-y), $(sort $(lib-y) $(lib-m))) - -# Remove objects forcibly disabled - -obj-y := $(filter-out $(disabled-obj-y),$(obj-y)) -obj-m := $(filter-out $(disabled-obj-y),$(obj-m)) -lib-y := $(filter-out $(disabled-obj-y),$(lib-y)) # Handle objects in subdirs diff -r 50477b1b3016 -r 670f8d5305d2 scripts/Makefile.xen.awk --- a/scripts/Makefile.xen.awk Fri Jul 13 13:35:06 2007 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -BEGIN { - is_rule = 0 -} - -/^[[:space:]]*#/ { - next -} - -/^[[:space:]]*$/ { - if (is_rule) - print("") - is_rule = 0 - next -} - -/:[[:space:]]*%\.[cS][[:space:]]/ { - line = gensub(/%.([cS])/, "%-xen.\\1", "g", $0) - line = gensub(/(single-used-m)/, "xen-\\1", "g", line) - print line - is_rule = 1 - next -} - -/^[^\t]$/ { - if (is_rule) - print("") - is_rule = 0 - next -} - -is_rule { - print $0 - next -} Todd Deshane wrote:> On 7/29/07, Keir Fraser <Keir.Fraser@cl.cam.ac.uk> wrote: >> If you revert changesets 131 and 130 in your linux-2.6.18-xen.hg tree, >> does the problem go away? Another thing to try is: you''ll get more info >> about exactly what the build system is doing if you set ''V=1'' while building >> Linux. >> > > > I reverted 131 and 130, and recompiled with KBUILD_VERBOSE=1 make verbose=y > > Still the same error, but the verbose version is below. > > Has there been any changeset that may fix this? > > Is anybody else having any similar problems? > > Maybe it is something with my setup... I am running a relatively vanilla > version of Ubuntu 7.04, with build-essential installed. > > Any other suggestions? > > Thanks, > Todd > > if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F > System.map-b /home/deshantm/devel/xen- > unstable.hg/dist/install -r 2.6.18-xen; fi > make[3]: Leaving directory `/home/deshantm/devel/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 > INSTALL_PATH=/home/deshantm/devel/xen-unstable.hg/dist/install vmlinuz > make[3]: Entering directory `/home/deshantm/devel/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make -C /home/deshantm/devel/linux-2.6.18-xen.hg O=/home/deshantm/devel/xen- > unstable.hg/build-linux-2.6.18-xen_x86_64 vmlinuz > make -C /home/deshantm/devel/xen-unstable.hg/build-linux-2.6.18-xen_x86_64 \ > KBUILD_SRC=/home/deshantm/devel/linux-2.6.18-xen.hg \ > KBUILD_EXTMOD="" -f /home/deshantm/devel/linux-2.6.18-xen.hg/Makefile > vmlinuz > rm -f include/config/kernel.release > echo 2.6.18-xen > include/config/kernel.release > Using /home/deshantm/devel/linux-2.6.18-xen.hg as source for kernel > if [ -f /home/deshantm/devel/linux-2.6.18-xen.hg/.config -o -d > /home/deshantm/devel/linux-2.6.18-xen.hg/include/config ]; then \ > echo " /home/deshantm/devel/linux-2.6.18-xen.hg is not > clean, please run ''make mrproper''";\ > echo " in the ''/home/deshantm/devel/linux-2.6.18-xen.hg'' > directory.";\ > /bin/false; \ > fi; > if [ ! -d include2 ]; then mkdir -p include2; fi; > ln -fsn /home/deshantm/devel/linux-2.6.18-xen.hg/include/asm-x86_64 > include2/asm > /bin/bash /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/mkmakefile \ > /home/deshantm/devel/linux-2.6.18-xen.hg/home/deshantm/devel/xen- > unstable.hg/build-linux-2.6.18-xen_x86_64 2 6 > GEN /home/deshantm/devel/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64/Makefile > set -e; echo '' CHK include/linux/version.h''; mkdir -p > include/linux/; (echo \#define LINUX_VERSION_CODE 132626; echo ''#define > KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'';) < > /home/deshantm/devel/linux-2.6.18-xen.hg/Makefile > > include/linux/version.h.tmp; if [ -r include/linux/version.h ] && cmp -s > include/linux/version.h include/linux/version.h.tmp; then rm -f > include/linux/version.h.tmp; else echo '' UPD include/linux/version.h''; > mv -f include/linux/version.h.tmp include/linux/version.h; fi > CHK include/linux/version.h > set -e; echo '' CHK include/linux/utsrelease.h''; mkdir -p > include/linux/; if [ `echo -n "2.6.18-xen" | wc -c ` -gt 64 ]; then echo > ''"2.6.18-xen" exceeds 64 characters'' >&2; exit 1; fi; (echo \#define > UTS_RELEASE \"2.6.18-xen\";) < include/config/kernel.release > > include/linux/utsrelease.h.tmp; if [ -r include/linux/utsrelease.h ] && cmp > -s include/linux/utsrelease.h include/linux/utsrelease.h.tmp; then rm -f > include/linux/utsrelease.h.tmp; else echo '' UPD > include/linux/utsrelease.h''; mv -f include/linux/utsrelease.h.tmp > include/linux/utsrelease.h; fi > CHK include/linux/utsrelease.h > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=scripts/basic > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=. > mkdir -p arch/x86_64/kernel/ > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=scripts > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=scripts/genksyms > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=scripts/mod > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=init > CHK include/linux/compile.h > /bin/bash /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/mkcompile_h > include/linux/compile.h \ > "x86_64" "y" "" "gcc -Wall -Wundef -Wstrict-prototypes > -Wno-trigraphs -fno-strict-aliasing -fno-common -Os -mtune=generic -m64 > -mno-red-zone -mcmodel=kernel -pipe -fno-reorder-blocks -Wno-sign-compare > -fno-asynchronous-unwind-tables -funit-at-a-time -mno-sse -mno-mmx -mno-sse2 > -mno-3dnow -fomit-frame-pointer -fno-stack-protector > -Wdeclaration-after-statement -Wno-pointer-sign" > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=usr > /bin/bash /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/gen_initramfs_list.sh > -l -d > usr/.initramfs_data.cpio.gz.d > make -f /home/deshantm/devel/linux-2.6.18-xen.hg/scripts/Makefile.build > obj=arch/x86_64/kernel > gcc -Wp,-MD,arch/x86_64/kernel/.process.o.d -nostdinc -isystem > /usr/lib/gcc/x86_64-linux-gnu/4.1.2/include -Iinclude2/asm/mach-xen > -D__KERNEL__ -Iinclude -Iinclude2 > -I/home/deshantm/devel/linux-2.6.18-xen.hg/include > -include include/linux/autoconf.h -D__XEN_INTERFACE_VERSION__=0x00030205 > -I/home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel > -Iarch/x86_64/kernel -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs > -fno-strict-aliasing -fno-common -Os -mtune=generic -m64 -mno-red-zone > -mcmodel=kernel -pipe -fno-reorder-blocks -Wno-sign-compare > -fno-asynchronous-unwind-tables -funit-at-a-time -mno-sse -mno-mmx -mno-sse2 > -mno-3dnow -fomit-frame-pointer -fno-stack-protector > -Wdeclaration-after-statement -Wno-pointer-sign -D"KBUILD_STR(s)=#s" > -D"KBUILD_BASENAME=KBUILD_STR(process)" > -D"KBUILD_MODNAME=KBUILD_STR(process)" -c -o > arch/x86_64/kernel/.tmp_process.o /home/deshantm/devel/linux-2.6.18-xen.hg > /arch/x86_64/kernel/process.c > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In > function ''exit_thread'': > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > error: ''per_cpu__init_tss'' undeclared (first use in this function) > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > error: (Each undeclared identifier is reported only once > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > error: for each function it appears in.) > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > warning: type defaults to ''int'' in declaration of ''type name'' > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: > error: invalid type argument of ''unary *'' > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: > error: dereferencing pointer to incomplete type > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In > function ''__switch_to'': > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > error: ''per_cpu__init_tss'' undeclared (first use in this function) > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > warning: type defaults to ''int'' in declaration of ''type name'' > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: > error: invalid type argument of ''unary *'' > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: > error: dereferencing pointer to incomplete type > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: > error: dereferencing pointer to incomplete type > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: > error: dereferencing pointer to incomplete type > /home/deshantm/devel/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: > error: dereferencing pointer to incomplete type > make[6]: *** [arch/x86_64/kernel/process.o] Error 1 > make[5]: *** [arch/x86_64/kernel] Error 2 > make[4]: *** [vmlinuz] Error 2 > make[3]: *** [vmlinuz] Error 2 > make[3]: Leaving directory `/home/deshantm/devel/xen-unstable.hg/build- > linux-2.6.18-xen_x86_64'' > make[2]: *** [build] Error 2 > make[2]: Leaving directory `/home/deshantm/devel/xen-unstable.hg'' > make[1]: *** [linux-2.6-xen-install] Error 2 > make[1]: Leaving directory `/home/deshantm/devel/xen-unstable.hg'' > make: *** [install-kernels] Error 1 > > > > -- Keir >> On 28/7/07 21:32, "Todd Deshane" <deshantm@gmail.com> wrote: >> >> >> >> On 7/28/07, *Keir Fraser* <Keir.Fraser@cl.cam.ac.uk> wrote: >> >> You need to do a completely clean build (make mrproper at the root of your >> Xen repository, thus deleting old Linux build trees). You are not correctly >> picking up *- xen.c versions of files. >> >> >> I did the make mrproper, but I still get the problem. I pulled them from >> http://xenbits.xensource.com/ directly, and still after running the make >> mrproper, I get the same errors. >> >> Any other suggestions? >> >> Thanks, >> Todd >> >> >> -- Keir >> >> >> On 28/7/07 07:03, "Todd Deshane" <deshantm@gmail.com> wrote: >> >> Hi All, >> >> I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I am >> getting the following compile error. Any suggestions on how to get it to >> compile correctly? >> >> I also get the same error compiling under 32bit, so that is not the >> problem. >> >> if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F >> System.map -b /var/hg/repos/xen-unstable.hg/dist/install -r 2.6.18-xen ; >> fi >> make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- >> linux-2.6.18-xen_x86_64'' >> make -C build-linux-2.6.18-xen_x86_64 ARCH=x86_64 >> INSTALL_PATH=/var/hg/repos/xen-unstable.hg/dist/install vmlinuz >> make[3]: Entering directory `/var/hg/repos/xen-unstable.hg/build- >> linux-2.6.18-xen_x86_64 '' >> make -C /var/hg/repos/linux-2.6.18-xen.hg O=/var/hg/repos/xen-unstable.hg >> /build-linux-2.6.18-xen_x86_64 vmlinuz >> Using /var/hg/repos/linux-2.6.18-xen.hg as source for kernel >> GEN /var/hg/repos/xen-unstable.hg /build- >> linux-2.6.18-xen_x86_64/Makefile >> CHK include/linux/version.h >> CHK include/linux/utsrelease.h >> CHK include/linux/compile.h >> CC arch/x86_64/kernel/process.o >> /var/hg/repos/linux-2.6.18-xen.hg /arch/x86_64/kernel/process.c: In >> function ''exit_thread'': >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: >> ''per_cpu__init_tss'' undeclared (first use in this function) >> /var/hg/repos/linux- 2.6.18-xen.hg /arch/x86_64/kernel/process.c:349: >> error: (Each undeclared identifier is reported only once >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: >> for each function it appears in.) >> /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: >> warning: type defaults to ''int'' in declaration of ''type name'' >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:349: error: >> invalid type argument of ''unary *'' >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:356: error: >> dereferencing pointer to incomplete type >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c: In >> function ''__switch_to'': >> /var/hg/repos/linux- 2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: >> error: ''per_cpu__init_tss'' undeclared (first use in this function) >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: >> warning: type defaults to ''int'' in declaration of ''type name'' >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:516: error: >> invalid type argument of ''unary *'' >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:521: error: >> dereferencing pointer to incomplete type >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: >> dereferencing pointer to incomplete type >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:611: error: >> dereferencing pointer to incomplete type >> /var/hg/repos/linux-2.6.18-xen.hg/arch/x86_64/kernel/process.c:617: error: >> dereferencing pointer to incomplete type >> make[6]: *** [arch/x86_64/kernel/process.o] Error 1 >> make[5]: *** [arch/x86_64/kernel] Error 2 >> make[4]: *** [vmlinuz] Error 2 >> make[3]: *** [vmlinuz] Error 2 >> make[3]: Leaving directory `/var/hg/repos/xen-unstable.hg/build- >> linux-2.6.18-xen_x86_64'' >> make[2]: *** [build] Error 2 >> make[2]: Leaving directory `/var/hg/repos/xen- unstable.hg'' >> make[1]: *** [linux-2.6-xen-install] Error 2 >> make[1]: Leaving directory `/var/hg/repos/xen-unstable.hg'' >> make: *** [install-kernels] Error 1 >> >> Thanks, >> Todd >> >> >> ------------------------------ >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> >> >> >> >> > > > ------------------------------------------------------------------------ > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel-- TAMURA, Yoshiaki NTT Cyber Space Labs OSS Computing Project Kernel Group E-mail: tamura.yoshiaki@lab.ntt.co.jp TEL: (046)-859-2771 FAX: (046)-855-1152 Address: 1-1 Hikarinooka, Yokosuka Kanagawa 239-0847 JAPAN _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Todd Deshane
2007-Sep-14 15:59 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
Hi All, Thanks for the patch Yoshi. I got me past my initial error and onto a new one (see below). On 8/3/07, Yoshiaki Tamura <tamura.yoshiaki@lab.ntt.co.jp> wrote:> Hi, > > I got the same error when I built changeset 152 of linux-2.6.18-xen.hg on debian > etch i386 machine. This problem occurred after changeset 130 and 131. > The following patch reverts changeset 130 and changeset 131 manually. > I hope this is useful for someone. > > Thanks, > > Yoshi Tamura > > --- > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/Makefile > --- a/arch/i386/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -116,6 +116,7 @@ PHONY += zImage bzImage compressed zlilo > > ifdef CONFIG_XEN > CPPFLAGS := -Iinclude$(if $(KBUILD_SRC),2)/asm/mach-xen $(CPPFLAGS) > +head-y := arch/i386/kernel/head-xen.o arch/i386/kernel/init_task-xen.o > boot := arch/i386/boot-xen > .PHONY: vmlinuz > all: vmlinuz > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/Makefile > --- a/arch/i386/kernel/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/kernel/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -43,7 +43,12 @@ EXTRA_AFLAGS := -traditional > EXTRA_AFLAGS := -traditional > > obj-$(CONFIG_SCx200) += scx200.o > -obj-$(CONFIG_XEN) += fixup.o > + > +ifdef CONFIG_XEN > +vsyscall_note := vsyscall-note-xen.o > +else > +vsyscall_note := vsyscall-note.o > +endif > > # vsyscall.o contains the vsyscall DSO images as __initdata. > # We must build both images before we can assemble it. > @@ -66,7 +71,7 @@ SYSCFLAGS_vsyscall-int80.so = $(vsyscall > > $(obj)/vsyscall-int80.so $(obj)/vsyscall-sysenter.so: \ > $(obj)/vsyscall-%.so: $(src)/vsyscall.lds \ > - $(obj)/vsyscall-%.o $(obj)/vsyscall-note.o FORCE > + $(obj)/vsyscall-%.o $(obj)/$(vsyscall_note) FORCE > $(call if_changed,syscall) > > # We also create a special relocatable object that should mirror the symbol > @@ -78,11 +83,20 @@ extra-y += vsyscall-syms.o > > SYSCFLAGS_vsyscall-syms.o = -r > $(obj)/vsyscall-syms.o: $(src)/vsyscall.lds \ > - $(obj)/vsyscall-sysenter.o $(obj)/vsyscall-note.o FORCE > + $(obj)/vsyscall-sysenter.o $(obj)/$(vsyscall_note) FORCE > $(call if_changed,syscall) > > -early_printk-y += ../../x86_64/kernel/early_printk.o > k8-y += ../../x86_64/kernel/k8.o > > -disabled-obj-$(CONFIG_XEN) := i8259.o reboot.o smpboot.o trampoline.o > -%/head.o %/head.s: $(if $(CONFIG_XEN),EXTRA_AFLAGS,dummy) :> +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > + > +obj-y += fixup.o > +microcode-$(subst m,y,$(CONFIG_MICROCODE)) := microcode-xen.o > +n-obj-xen := i8259.o timers/ reboot.o smpboot.o trampoline.o > + > +obj-y := $(call filterxen, $(obj-y), $(n-obj-xen)) > +obj-y := $(call cherrypickxen, $(obj-y)) > +extra-y := $(call cherrypickxen, $(extra-y)) > +%/head-xen.o %/head-xen.s: EXTRA_AFLAGS :> +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/acpi/Makefile > --- a/arch/i386/kernel/acpi/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/kernel/acpi/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -6,3 +6,7 @@ obj-y += cstate.o processor.o > obj-y += cstate.o processor.o > endif > > +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > +obj-y := $(call cherrypickxen, $(obj-y), $(src)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/cpu/Makefile > --- a/arch/i386/kernel/cpu/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/kernel/cpu/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -18,3 +18,7 @@ obj-$(CONFIG_MTRR) += mtrr/ > obj-$(CONFIG_MTRR) += mtrr/ > obj-$(CONFIG_CPU_FREQ) += cpufreq/ > > +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > +obj-y := $(call cherrypickxen, $(obj-y), $(src)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/kernel/cpu/mtrr/Makefile > --- a/arch/i386/kernel/cpu/mtrr/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/kernel/cpu/mtrr/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -3,4 +3,10 @@ obj-y += cyrix.o > obj-y += cyrix.o > obj-y += centaur.o > > -obj-$(CONFIG_XEN) := main.o if.o > +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > +n-obj-xen := generic.o state.o amd.o cyrix.o centaur.o > + > +obj-y := $(call filterxen, $(obj-y), $(n-obj-xen)) > +obj-y := $(call cherrypickxen, $(obj-y)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/mm/Makefile > --- a/arch/i386/mm/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/mm/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -8,4 +8,11 @@ obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpag > obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o > obj-$(CONFIG_HIGHMEM) += highmem.o > obj-$(CONFIG_BOOT_IOREMAP) += boot_ioremap.o > -obj-$(CONFIG_XEN) += hypervisor.o > + > +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > + > +obj-y += hypervisor.o > + > +obj-y := $(call cherrypickxen, $(obj-y)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/i386/pci/Makefile > --- a/arch/i386/pci/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/i386/pci/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -16,3 +16,8 @@ pci-$(CONFIG_X86_NUMAQ) := numa.o irq.o > pci-$(CONFIG_X86_NUMAQ) := numa.o irq.o > > obj-y += $(pci-y) common.o > + > +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > +obj-y := $(call cherrypickxen, $(obj-y)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/Makefile > --- a/arch/x86_64/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/x86_64/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -80,6 +80,7 @@ PHONY += bzImage bzlilo install archmrpr > > ifdef CONFIG_XEN > CPPFLAGS := -Iinclude$(if $(KBUILD_SRC),2)/asm/mach-xen $(CPPFLAGS) > +head-y := arch/x86_64/kernel/head-xen.o arch/x86_64/kernel/head64-xen.o > arch/x86_64/kernel/init_task.o > LDFLAGS_vmlinux := -e startup_64 > boot := arch/i386/boot-xen > .PHONY: vmlinuz > diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/ia32/Makefile > --- a/arch/x86_64/ia32/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/x86_64/ia32/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -37,8 +37,15 @@ AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32 > > ifdef CONFIG_XEN > AFLAGS_vsyscall-int80.o = -m32 -Wa,-32 -Iarch/i386/kernel > -CFLAGS_syscall32.o += -DUSE_INT80 > -AFLAGS_syscall32_syscall.o += -DUSE_INT80 > +CFLAGS_syscall32-xen.o += -DUSE_INT80 > +AFLAGS_syscall32_syscall-xen.o += -DUSE_INT80 > > -$(obj)/syscall32_syscall.o: $(obj)/vsyscall-int80.so > +$(obj)/syscall32_syscall-xen.o: \ > + $(foreach F,int80 sysenter syscall,$(obj)/vsyscall-$F.so) > + > +targets := $(foreach F,int80 sysenter syscall,vsyscall-$F.o vsyscall-$F.so) > + > +include $(srctree)/scripts/Makefile.xen > + > +obj-y := $(call cherrypickxen, $(obj-y)) > endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/kernel/Makefile > --- a/arch/x86_64/kernel/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/x86_64/kernel/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -57,8 +57,18 @@ msr-$(subst m,y,$(CONFIG_X86_MSR)) += . > msr-$(subst m,y,$(CONFIG_X86_MSR)) += ../../i386/kernel/msr.o > alternative-y += ../../i386/kernel/alternative.o > > -time-$(CONFIG_XEN) += ../../i386/kernel/time.o > -pci-dma-$(CONFIG_XEN) += ../../i386/kernel/pci-dma.o > +ifdef CONFIG_XEN > +time-y += ../../i386/kernel/time-xen.o > +pci-dma-y += ../../i386/kernel/pci-dma-xen.o > +microcode-$(subst m,y,$(CONFIG_MICROCODE)) := ../../i386/kernel/microcode-xen.o > +quirks-y := ../../i386/kernel/quirks-xen.o > > -disabled-obj-$(CONFIG_XEN) := i8259.o reboot.o smpboot.o trampoline.o > -%/head.o %/head.s: $(if $(CONFIG_XEN),EXTRA_AFLAGS,dummy) :> +n-obj-xen := i8259.o reboot.o i8237.o smpboot.o trampoline.o > + > +include $(srctree)/scripts/Makefile.xen > + > +obj-y := $(call filterxen, $(obj-y), $(n-obj-xen)) > +obj-y := $(call cherrypickxen, $(obj-y)) > +extra-y := $(call cherrypickxen, $(extra-y)) > +%/head-xen.o %/head-xen.s: EXTRA_AFLAGS :> +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/mm/Makefile > --- a/arch/x86_64/mm/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/x86_64/mm/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -7,8 +7,15 @@ obj-$(CONFIG_NUMA) += numa.o > obj-$(CONFIG_NUMA) += numa.o > obj-$(CONFIG_K8_NUMA) += k8topology.o > obj-$(CONFIG_ACPI_NUMA) += srat.o > -obj-$(CONFIG_XEN) += hypervisor.o > > hugetlbpage-y = ../../i386/mm/hugetlbpage.o > -ioremap-$(CONFIG_XEN) := ../../i386/mm/ioremap.o > -hypervisor-y := ../../i386/mm/hypervisor.o > + > +ifdef CONFIG_XEN > +include $(srctree)/scripts/Makefile.xen > + > +ioremap-y += ../../i386/mm/ioremap-xen.o > +hypervisor-y += ../../i386/mm/hypervisor.o > +obj-y += hypervisor.o > + > +obj-y := $(call cherrypickxen, $(obj-y)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 arch/x86_64/pci/Makefile > --- a/arch/x86_64/pci/Makefile Fri Jul 13 13:35:06 2007 +0100 > +++ b/arch/x86_64/pci/Makefile Thu Jul 12 16:05:09 2007 +0100 > @@ -28,3 +28,10 @@ fixup-y += ../../i386/pci/fixup.o > fixup-y += ../../i386/pci/fixup.o > i386-y += ../../i386/pci/i386.o > init-y += ../../i386/pci/init.o > + > +ifdef CONFIG_XEN > +irq-y := ../../i386/pci/irq-xen.o > +include $(srctree)/scripts/Makefile.xen > + > +obj-y := $(call cherrypickxen, $(obj-y)) > +endif > diff -r 50477b1b3016 -r 670f8d5305d2 scripts/Makefile.build > --- a/scripts/Makefile.build Fri Jul 13 13:35:06 2007 +0100 > +++ b/scripts/Makefile.build Thu Jul 12 16:05:09 2007 +0100 > @@ -66,18 +66,6 @@ endif > > ifndef obj > $(warning kbuild: Makefile.build is included improperly) > -endif > - > -ifeq ($(CONFIG_XEN),y) > -$(objtree)/scripts/Makefile.xen: $(srctree)/scripts/Makefile.xen.awk > $(srctree)/scripts/Makefile.build > - @echo '' Updating $@'' > - @$(AWK) -f $< $(filter-out $<,$^) >$@ > - > -xen-src-single-used-m := $(patsubst $(srctree)/%,%,$(wildcard $(addprefix > $(srctree)/,$(single-used-m:.o=-xen.c)))) > -xen-single-used-m := $(xen-src-single-used-m:-xen.c=.o) > -single-used-m := $(filter-out $(xen-single-used-m),$(single-used-m)) > - > --include $(objtree)/scripts/Makefile.xen > endif > > # ==========================================================================> diff -r 50477b1b3016 -r 670f8d5305d2 scripts/Makefile.lib > --- a/scripts/Makefile.lib Fri Jul 13 13:35:06 2007 +0100 > +++ b/scripts/Makefile.lib Thu Jul 12 16:05:09 2007 +0100 > @@ -12,12 +12,6 @@ obj-m := $(filter-out $(obj-y),$(obj-m)) > # Filter out objects already built-in > > lib-y := $(filter-out $(obj-y), $(sort $(lib-y) $(lib-m))) > - > -# Remove objects forcibly disabled > - > -obj-y := $(filter-out $(disabled-obj-y),$(obj-y)) > -obj-m := $(filter-out $(disabled-obj-y),$(obj-m)) > -lib-y := $(filter-out $(disabled-obj-y),$(lib-y)) > > > # Handle objects in subdirs > diff -r 50477b1b3016 -r 670f8d5305d2 scripts/Makefile.xen.awk > --- a/scripts/Makefile.xen.awk Fri Jul 13 13:35:06 2007 +0100 > +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 > @@ -1,34 +0,0 @@ > -BEGIN { > - is_rule = 0 > -} > - > -/^[[:space:]]*#/ { > - next > -} > - > -/^[[:space:]]*$/ { > - if (is_rule) > - print("") > - is_rule = 0 > - next > -} > - > -/:[[:space:]]*%\.[cS][[:space:]]/ { > - line = gensub(/%.([cS])/, "%-xen.\\1", "g", $0) > - line = gensub(/(single-used-m)/, "xen-\\1", "g", line) > - print line > - is_rule = 1 > - next > -} > - > -/^[^\t]$/ { > - if (is_rule) > - print("") > - is_rule = 0 > - next > -} > - > -is_rule { > - print $0 > - next > -} >I just pulled the latest xen and linux unstable and applied the patch above manually, since some of the line numbers had changed. It got rid of the previous error I was having and it compiled the kernel for awhile longer, but it came to a new error: CC net/compat.o CC net/sysctl_net.o LD net/built-in.o CC lib/sort.o CC lib/parser.o CC lib/halfmd4.o CC lib/iomap_copy.o CC lib/debug_locks.o CC lib/kernel_lock.o CC lib/plist.o HOSTCC lib/gen_crc32table GEN lib/crc32table.h CC lib/crc32.o CC lib/iomap.o LD lib/reed_solomon/built-in.o LD lib/zlib_deflate/built-in.o CC lib/zlib_inflate/inffast.o CC lib/zlib_inflate/inflate.o CC lib/zlib_inflate/inftrees.o CC lib/zlib_inflate/inflate_syms.o LD lib/zlib_inflate/zlib_inflate.o LD lib/zlib_inflate/built-in.o CC lib/textsearch.o CC lib/percpu_counter.o CC lib/swiotlb.o /home/deshantm/devel/linux-2.6.18-xen.hg/lib/swiotlb.c:270: error: redefinition of ''address_needs_mapping'' /home/deshantm/devel/linux-2.6.18-xen.hg/include/asm-i386/mach-xen/asm/dma-mapping.h:17: error: previous definition of ''address_needs_mapping'' was here make[6]: *** [lib/swiotlb.o] Error 1 make[5]: *** [lib] Error 2 make[4]: *** [vmlinuz] Error 2 make[3]: *** [vmlinuz] Error 2 make[3]: Leaving directory `/home/deshantm/devel/xen-unstable.hg/build-linux-2.6.18-xen_x86_64'' make[2]: *** [build] Error 2 make[2]: Leaving directory `/home/deshantm/devel/xen-unstable.hg'' make[1]: *** [linux-2.6-xen-install] Error 2 make[1]: Leaving directory `/home/deshantm/devel/xen-unstable.hg'' I will make mrproper (again) re-build and turn on the V=1 etc. again. And try again, but I don''t understand why I can''t pull xen unstable directly and have it work... Does anybody do that ever to test that it works? If so, what could I possible be doing wrong? Thanks for any thoughts or ideas I really hope to contribute some code this year and be an active contributor. I just need to get over the initial big learning curve as to even simply building xen unstable, so as to be able to create relevant patches. Best regards, Todd _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Gianluca Guida
2007-Oct-04 13:42 UTC
Re: [Xen-devel] xen-unstable compile error in linux-2.6.18-xen_x86_64 and x86
Hi, On Jul 28, 2007, at 8:03 AM, Todd Deshane wrote:> I just pulled the latest xen-unstable.hg and linux-2.6.18.hg and I > am getting the following compile error. Any suggestions on how to > get it to compile correctly? > > I also get the same error compiling under 32bit, so that is not the > problem.I''ve been hit by the same problem, and after digging into Makefiles for a while I''ve found that the problem was due to the fact that in my system was installed mawk, not gawk. Non-GNU awk implementations don''t recognize the ''gensub'' function required by Makefile.xen.awk, and thus an empty Makefile.xen is generated. Shouldn''t we use ''gawk'' and not $(AWK) here? Installing gawk should fix your problems without patch reversion. Thanks, Gianluca _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel