After many unsuccessful attempts at getting Xen 3.0 to run with any level of stability, I''ve decided to return to Xen 2. I''m currently trying to build the kernel under SuSE 9.3 and getting the following error messages: LD init/built-in.o LD .tmp_vmlinux1 arch/xen/kernel/built-in.o(.text+0x85b): In function `ctrl_if_suspend'': : undefined reference to `teardown_irq'' drivers/built-in.o(.text+0x40baf): In function `balloon_process'': balloon.c: undefined reference to `kmap_flush_unused'' make: *** [.tmp_vmlinux1] Error 1 I''ve seen the other messages in the list about this, but haven''t seen any solutions. Could someone please tell me how in the world I am supposed to fix this error? I''m using the most recent Xen packages for SuSE 9.3 (Xen 2.0.7/Kernel 2.6.11.4-21.8). Thanks, Nick Couchman Systems Integrator SEAKR Engineering, Inc. 6221 South Racine Circle Centennial, CO 80111 Main: (303) 790-8499 Fax: (303) 790-8720 Web: http://www.seakr.com _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
> After many unsuccessful attempts at getting Xen 3.0 to run > with any level of stability, I''ve decided to return to Xen 2.Looking at your previous postings, it looks like you might have been using SuSE''s pre-prelease packages rather than the ''official'' 3.0.0 release. If you''ve been having problems with 3.0.0 then please let us know. Ian _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Nick Couchman wrote:> I''ve seen the other messages in the list about this, but haven''t seen any > solutions. Could someone please tell me how in the world I am supposed to fix > this error? I''m using the most recent Xen packages for SuSE 9.3 (Xen > 2.0.7/Kernel 2.6.11.4-21.8).I am not certain that this is your problem but are you aware that to build a xen kernel from the SuSE sources you need _two_ pieces, two source RPM''s. ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-source-2.6.11.4-21.9.src.rpm ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-xen-2.6.11.4-21.9.nosrc.rpm Don''t use the sources from the kernel-source-2.6.11.4-21.9.rpm package. You can use them to build a ''kernel-default'' but not a ''kernel-xen'' do a ''rpm -i'' for both the RPM''s then look at the files installed under /usr/src/packages . The order is important, install the .src.rpm file first, then the .nosrc.rpm file. The .nosrc.rpm overwrites/overlays on top of the first source tree to give you a source tree suitable for building a Xen kernel. You will find a spec file installed under /usr/src/packages/SOURCES/kernel-xen.spec Run rpmbuild using this spec file and this will build you a xenified kernel binary RPM. If you want to customise the kernel, you can unpack the sources (tar files in /usr/src/packages/SOURCES), modify them, repackage them as tar files, bump the version number in the spec file and run rpmbuild again. _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Replying to myself... Robbie Dinn wrote:> Nick Couchman wrote: >> I''ve seen the other messages in the list about this, but haven''t seen >> any solutions. Could someone please tell me how in the world I am >> supposed to fix this error? I''m using the most recent Xen packages >> for SuSE 9.3 (Xen 2.0.7/Kernel 2.6.11.4-21.8). > > I am not certain that this is your problem but are you > aware that to build a xen kernel from the SuSE sources you need > _two_ pieces, two source RPM''s. > > ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-source-2.6.11.4-21.9.src.rpm > > ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-xen-2.6.11.4-21.9.nosrc.rpmPS. I would also recommend looking at file: /usr/share/doc/packages/kernel-source/README.SUSE That will give you a clue as to how SuSE go about building their different flavours of kernel, including I guess the xen flavour too. _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Where can I obtain the official 3.0.0 release for SuSE 10? On the xensource.com site, I''ve only seen it for SuSE 9.2 (not even SuSE 9.3). I''ve also tried the generic xen-3.0 tarball release, but that seems to cause stability problems, as well... Nick Couchman Systems Integrator SEAKR Engineering, Inc. 6221 South Racine Circle Centennial, CO 80111 Main: (303) 790-8499 Fax: (303) 790-8720 Web: http://www.seakr.com>>> On 2005/12/13 at 21:16:16, in message <A95E2296287EAD4EB592B5DEEFCE0E9D409D0E@liverpoolst.ad.cl.cam.ac.uk>, "Ian Pratt" <m+Ian.Pratt@cl.cam.ac.uk> wrote:> After many unsuccessful attempts at getting Xen 3.0 to run > with any level of stability, I''ve decided to return to Xen 2.Looking at your previous postings, it looks like you might have been using SuSE''s pre-prelease packages rather than the ''official'' 3.0.0 release. If you''ve been having problems with 3.0.0 then please let us know. Ian _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Yeah - I have both the kernel-source and kernel-xen packages installed. The kernel builds fine, for the most part, right up until the .tmp_vmlinux1 where it fails with those errors. Nick Couchman Systems Integrator SEAKR Engineering, Inc. 6221 South Racine Circle Centennial, CO 80111 Main: (303) 790-8499 Fax: (303) 790-8720 Web: http://www.seakr.com>>> On 2005/12/14 at 02:50:52, in message <439FEAFC.7020208@microbus.com>, Robbie Dinn <robbie@microbus.com> wrote:Nick Couchman wrote:> I''ve seen the other messages in the list about this, but haven''t seen any > solutions. Could someone please tell me how in the world I am supposed to fix > this error? I''m using the most recent Xen packages for SuSE 9.3 (Xen > 2.0.7/Kernel 2.6.11.4-21.8).I am not certain that this is your problem but are you aware that to build a xen kernel from the SuSE sources you need _two_ pieces, two source RPM''s. ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-source-2.6.11.4-21.9.src.rpm ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-xen-2.6.11.4-21.9.nosrc.rpm Don''t use the sources from the kernel-source-2.6.11.4-21.9.rpm package. You can use them to build a ''kernel-default'' but not a ''kernel-xen'' do a ''rpm -i'' for both the RPM''s then look at the files installed under /usr/src/packages . The order is important, install the .src.rpm file first, then the .nosrc.rpm file. The .nosrc.rpm overwrites/overlays on top of the first source tree to give you a source tree suitable for building a Xen kernel. You will find a spec file installed under /usr/src/packages/SOURCES/kernel-xen.spec Run rpmbuild using this spec file and this will build you a xenified kernel binary RPM. If you want to customise the kernel, you can unpack the sources (tar files in /usr/src/packages/SOURCES), modify them, repackage them as tar files, bump the version number in the spec file and run rpmbuild again. _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Nick Couchman wrote:> Yeah - I have both the kernel-source and kernel-xen packages installed. The > kernel builds fine, for the most part, right up until the .tmp_vmlinux1 where it > fails with those errors.I didn''t explain myself very well. There are ''source'' RPM''s and ''binary'' RPM''s. I believe you are trying to build a xen kernel from the source tree that comes with the kernel-source-{2.6.11.4-20a,2.6.11.4-21.8}.i586.rpm ''binary'' RPM. That does not work. That source tree is just for building the kernel-default-{2.6.11.4-20a,2.6.11.4-21.8}.i586.rpm ''binary'' RPM. In an ideal world you would be able to build all the different kernel architecture from the source one tree, but in practice that is not the case. Instead you have to start with the ''source'' RPM ( kernel-source-{version}.src.rpm ), using the appropriate spec file for the architecture you want to build (i386 xen in your case?). Background... If you look at your installation media (CDROM, DVD, FTP mirror site) there is a binary RPM in ./suse/i586/kernel-source-2.6.11.4-20a.i586.rpm That RPM is a ''binary'' RPM, that happens to contain just the kernel sources. Specifically these are kernel sources that were used to build the kernel-default-2.6.11.4-20a.i586.rpm ''binary'' RPM Note how these RPM''s both end in ''.i586.rpm''. Both these binary RPM''s were created from a ''source'' RPM found in ./suse/src/kernel-source-2.6.11.4-20a.src.rpm This source RPM contains kernel.org kernel, plus architecture specific patches (xen, uml, ppc, s390, itanic), plus architecture independant fixes, plus build instructions (spec files, scripts, Makefile). This is all described in much more detail and more accurately than I have done in the documentation found in /usr/share/doc/pakages/kernel-source/README.SUSE One thing that the above documentation file does not mention is that kernel-source-{version}.src.rpm file alone is not sufficient. You also need a kernel-source-{arch}-{version}.nosrc.rpm file too. (except when you are building the kernel-default). If you want to build the kernel-xen-2.6.11.4-21.9 binary RPM, you need to fetch: ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-source-2.6.11.4-21.9.src.rpm ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-xen-2.6.11.4-21.9.nosrc.rpm Read up on ''man rpm'' and ''man rpmbuild'' for installing and building RPM files. It will be difficult to build 2.6.11.4-21.8 because that is now gone from the suse site and its mirrors. If you want to use a SuSE kernel and xen 3.0, then you will have to use the source RPM''s (or binaries) that Kurt Garloff distibutes. His page is http://www.suse.de/~garloff/linux/xen/ and follow the link that reads ''SUSE Linux 10.0 RPMs'' I haven''t tried running a SuSE 10.0 kernel with a SuSE 9.3 install though. It may work. Alternatively, you could use the kernel source that comes from the xensource.com or www.cl.cam.ac.uk sites. That might be much less effort too. You only really need to bother with the SuSE sources if you want a kernel that is as close as possible to something that SuSE ships. _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
I think I understand what you''re trying to say, but here''s what I have. I have the following RPMS installed: kernel-xen-2.6.11.4-21.9.i586.rpm kernel-xen-source-2.6.11.4-21.9.i586.rpm The first file provides the actual prebuilt images, the second provides the source code, patched with XEN. I''m not trying to change configurations or architectures from the XEN architecture or the default XEN configuration. I''m just trying to build the default XEN image and I''m getting these errors. The XEN 3 images that I''ve had stability issues with are both the default SuSE ones and the ones provided by Kurt Garloff - neither seem to provide a stable operating environment for me. Thanks, Nick Couchman Systems Integrator SEAKR Engineering, Inc. 6221 South Racine Circle Centennial, CO 80111 Main: (303) 790-8499 Fax: (303) 790-8720 Web: http://www.seakr.com>>> On 2005/12/14 at 08:40:46, in message <43A03CFE.1030809@microbus.com>, Robbie Dinn <robbie@microbus.com> wrote:Nick Couchman wrote:> Yeah - I have both the kernel-source and kernel-xen packages installed. The > kernel builds fine, for the most part, right up until the .tmp_vmlinux1 where it > fails with those errors.I didn''t explain myself very well. There are ''source'' RPM''s and ''binary'' RPM''s. I believe you are trying to build a xen kernel from the source tree that comes with the kernel-source-{2.6.11.4-20a,2.6.11.4-21.8}.i586.rpm ''binary'' RPM. That does not work. That source tree is just for building the kernel-default-{2.6.11.4-20a,2.6.11.4-21.8}.i586.rpm ''binary'' RPM. In an ideal world you would be able to build all the different kernel architecture from the source one tree, but in practice that is not the case. Instead you have to start with the ''source'' RPM ( kernel-source-{version}.src.rpm ), using the appropriate spec file for the architecture you want to build (i386 xen in your case?). Background... If you look at your installation media (CDROM, DVD, FTP mirror site) there is a binary RPM in ./suse/i586/kernel-source-2.6.11.4-20a.i586.rpm That RPM is a ''binary'' RPM, that happens to contain just the kernel sources. Specifically these are kernel sources that were used to build the kernel-default-2.6.11.4-20a.i586.rpm ''binary'' RPM Note how these RPM''s both end in ''.i586.rpm''. Both these binary RPM''s were created from a ''source'' RPM found in ./suse/src/kernel-source-2.6.11.4-20a.src.rpm This source RPM contains kernel.org kernel, plus architecture specific patches (xen, uml, ppc, s390, itanic), plus architecture independant fixes, plus build instructions (spec files, scripts, Makefile). This is all described in much more detail and more accurately than I have done in the documentation found in /usr/share/doc/pakages/kernel-source/README.SUSE One thing that the above documentation file does not mention is that kernel-source-{version}.src.rpm file alone is not sufficient. You also need a kernel-source-{arch}-{version}.nosrc.rpm file too. (except when you are building the kernel-default). If you want to build the kernel-xen-2.6.11.4-21.9 binary RPM, you need to fetch: ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-source-2.6.11.4-21.9.src.rpm ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-xen-2.6.11.4-21.9.nosrc.rpm Read up on ''man rpm'' and ''man rpmbuild'' for installing and building RPM files. It will be difficult to build 2.6.11.4-21.8 because that is now gone from the suse site and its mirrors. If you want to use a SuSE kernel and xen 3.0, then you will have to use the source RPM''s (or binaries) that Kurt Garloff distibutes. His page is http://www.suse.de/~garloff/linux/xen/ and follow the link that reads ''SUSE Linux 10.0 RPMs'' I haven''t tried running a SuSE 10.0 kernel with a SuSE 9.3 install though. It may work. Alternatively, you could use the kernel source that comes from the xensource.com or www.cl.cam.ac.uk sites. That might be much less effort too. You only really need to bother with the SuSE sources if you want a kernel that is as close as possible to something that SuSE ships. _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
A couple of corrections... I don''t actually have kernel-xen-source... (since that package doesn''t even exist) RPM installed, I just have kernel-source... RPM installed. And I think I understand what you''re saying - you must have the source for the architecture for which you''re trying to build the image. That makes sense. What I don''t understand is this: if that''s the case, why is the kernel source included in the kernel-source RPM already patched for XEN? If you''re not supposed to be able to build it for the XEN architecture, why does the source include the patches that make it possible? I actually did get the kernel to build. It seems that a couple of the files in the /usr/src/linux-2.6.11.4-21.9 directory related to XEN are not patched correctly. Copying the files from the xen-2.0 linux-2.6 patch tree seems to fix this problem and allows the kernel to build (now I just have to see if it will actually run). The fact that these files are not patched correctly causes the errors that I described in the first e-mail when trying to build the .tmp_vmlinux1 piece of the kernel (undefined functions). Nick Couchman Systems Integrator SEAKR Engineering, Inc. 6221 South Racine Circle Centennial, CO 80111 Main: (303) 790-8499 Fax: (303) 790-8720 Web: http://www.seakr.com>>> On 2005/12/14 at 08:40:46, in message <43A03CFE.1030809@microbus.com>, Robbie Dinn <robbie@microbus.com> wrote:Nick Couchman wrote:> Yeah - I have both the kernel-source and kernel-xen packages installed. The > kernel builds fine, for the most part, right up until the .tmp_vmlinux1 where it > fails with those errors.I didn''t explain myself very well. There are ''source'' RPM''s and ''binary'' RPM''s. I believe you are trying to build a xen kernel from the source tree that comes with the kernel-source-{2.6.11.4-20a,2.6.11.4-21.8}.i586.rpm ''binary'' RPM. That does not work. That source tree is just for building the kernel-default-{2.6.11.4-20a,2.6.11.4-21.8}.i586.rpm ''binary'' RPM. In an ideal world you would be able to build all the different kernel architecture from the source one tree, but in practice that is not the case. Instead you have to start with the ''source'' RPM ( kernel-source-{version}.src.rpm ), using the appropriate spec file for the architecture you want to build (i386 xen in your case?). Background... If you look at your installation media (CDROM, DVD, FTP mirror site) there is a binary RPM in ./suse/i586/kernel-source-2.6.11.4-20a.i586.rpm That RPM is a ''binary'' RPM, that happens to contain just the kernel sources. Specifically these are kernel sources that were used to build the kernel-default-2.6.11.4-20a.i586.rpm ''binary'' RPM Note how these RPM''s both end in ''.i586.rpm''. Both these binary RPM''s were created from a ''source'' RPM found in ./suse/src/kernel-source-2.6.11.4-20a.src.rpm This source RPM contains kernel.org kernel, plus architecture specific patches (xen, uml, ppc, s390, itanic), plus architecture independant fixes, plus build instructions (spec files, scripts, Makefile). This is all described in much more detail and more accurately than I have done in the documentation found in /usr/share/doc/pakages/kernel-source/README.SUSE One thing that the above documentation file does not mention is that kernel-source-{version}.src.rpm file alone is not sufficient. You also need a kernel-source-{arch}-{version}.nosrc.rpm file too. (except when you are building the kernel-default). If you want to build the kernel-xen-2.6.11.4-21.9 binary RPM, you need to fetch: ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-source-2.6.11.4-21.9.src.rpm ftp://your.suse.mirror/pub/suse/i386/update/9.3/rpm/src/kernel-xen-2.6.11.4-21.9.nosrc.rpm Read up on ''man rpm'' and ''man rpmbuild'' for installing and building RPM files. It will be difficult to build 2.6.11.4-21.8 because that is now gone from the suse site and its mirrors. If you want to use a SuSE kernel and xen 3.0, then you will have to use the source RPM''s (or binaries) that Kurt Garloff distibutes. His page is http://www.suse.de/~garloff/linux/xen/ and follow the link that reads ''SUSE Linux 10.0 RPMs'' I haven''t tried running a SuSE 10.0 kernel with a SuSE 9.3 install though. It may work. Alternatively, you could use the kernel source that comes from the xensource.com or www.cl.cam.ac.uk sites. That might be much less effort too. You only really need to bother with the SuSE sources if you want a kernel that is as close as possible to something that SuSE ships. _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
> I''ve seen the other messages in the list about this, but haven''t seen > any solutions. Could someone please tell me how in the world I am > supposed to fix this error? I''m using the most recent Xen packages for > SuSE 9.3 (Xen 2.0.7/Kernel 2.6.11.4-21.8).rpmbuild -ba kernel-xen.spec Installing kernel-source.rpm and trying to build a xen kernel doesn''t work as the source trees for xen kernels and the other ones are slightly different. Thats true for both 9.3 and 10.0. The latest 2.6.15-rc5-based suse kernels (http://ftp.suse.com/pub/projects/kernel/kotd/i386/HEAD, suitable for xen 3.0-final) have this fixed though, so compiling your own kernel will be easier with these packages ... cheers, Gerd _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Nick Couchman wrote:> And I think I > understand what you''re saying - you must have the source for the architecture > for which you''re trying to build the image. That makes sense. What I don''t > understand is this: if that''s the case, why is the kernel source included in the > kernel-source RPM already patched for XEN? If you''re not supposed to be able to > build it for the XEN architecture, why does the source include the patches that > make it possible?My guess: It did work at some snapshot in time, but it has broken since then. And then SuSE find that they have ship a kernel with security fixes and they can''t wait while the Xen stuff gets fully merged into kernel-default again. Do you know the joke about the traveller asking directions? Traveller: How do I get from here [C] to [A]. Farmer: You don''t want to start from here, you want to go from [B] where [C]=lost and substitting place names of your choice for [A] and [B]. In our case we have [A]=kernel-xen-2.6.11.4-21.9.i586.rpm [B]=kernel-source-2.6.4-21.9.src.rpm+kernel-xen-2.6.11.4-21.9.nosrc.rpm [C]=kernel-source-2.6.11.4-21.9.rpm _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users