[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] Recompiling a xen-enabled kernel "the Debian way" (lenny)



Hello all, I got xen working under lenny without any problems by installing it from the deb packages and really like it.

However, for us to use it in a production environment, I have to recompile the default Debian kernel for some tuning and mainly to strip it down to exactly what we need on the servers.

I'm close, but erroring out near the end and don't know why, but it has to do with the ARCH (I think)...

This process below works fine for recompiling the kernel, but at no point do I get the "Compile a xen compatiable kernel" option under "make menuconfig", and thus I am left with a xen-less kernel using this method:

apt-get install linux-source-2.6.26 linux-patch-debian-2.6.26 kernel-package

Then I have to deal with Debian Bug #508487 where someone posted a workaround (see: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=508487)

I can go into /usr/src/linux-2.6.26 and "make menuconfig", but I have no xen options.

But I can compile a perfectly working kernel using:
make-kpkg --rootcmd fakeroot --initrd --revision=XXX --added-patches xen kernel_image

That results in a xen-less kernel, but at least it compiles.



So I'm thinking, how do I actually add the xen patch to the kernel? It seems the way to do this is:

/usr/src/kernel-patches/all/2.6.26/apply/debian -a amd64 -f xen

Which gives a lot of promising output:

xen1:/usr/src/linux-source-2.6.26# /usr/src/kernel-patches/all/2.6.26/apply/debian -a amd64 -f xen
--> Try to unapply 23-extra.
--> 23-extra fully unapplied.
--> Try to unapply 22-extra.
  (+) OK   features/all/xen/add-x86-hyper-vendor-defines.patch
  (+) OK   features/all/xen/xen-fix-msi-hypercall.patch
--> 22-extra fully unapplied.
--> Try to unapply 21lenny4-extra.
  (+) OK   features/all/xen/printk-robustify-printk-xen.patch
(+) OK features/all/xen/set_personality_ia32-misses-force_personality32.patch
--> 21lenny4-extra fully unapplied.
--> Try to unapply 21lenny3-extra.
  (+) OK   features/all/xen/get-rid-of-TIF_ABI_PENDING-bit.patch
--> 21lenny3-extra fully unapplied.
--> Try to unapply 21lenny2-extra.
  (+) OK   bugfix/all/untangle-the-do_mremap-mess-xen.patch
--> 21lenny2-extra fully unapplied.
--> Try to unapply 21-extra.
  (+) OK   features/all/xen/update-tick_nohz_stop_sched_tick-api.patch
--> 21-extra fully unapplied.
--> Try to unapply 20-extra.
  (+) OK   features/all/xen/fix-xen-spin-wait.patch
--> 20-extra fully unapplied.
--> Try to unapply 18-extra.
--> 18-extra fully unapplied.
--> Try to unapply 16-extra.
  (+) OK   bugfix/x86/arch-ia32-entry-int80-enosys-xen.patch
--> 16-extra fully unapplied.
--> Try to unapply 15lenny3-extra.
  (+) OK   features/all/xen/i386-hypervisor_callback-adjustments.patch
--> 15lenny3-extra fully unapplied.
--> Try to unapply 14-extra.
--> 14-extra fully unapplied.
--> Try to unapply 12-extra.
(+) OK features/all/xen/dom0-fix-processor-throttling-when-pr-id-is-minus-1.patch
--> 12-extra fully unapplied.
--> Try to unapply 10-extra.
  (+) OK   features/all/xen/disable-pat.patch
--> 10-extra fully unapplied.
--> Try to unapply 9-extra.
  (+) OK   features/all/xen/console-hvc-overtake.patch
--> 9-extra fully unapplied.
--> Try to unapply 7-extra.
  (+) OK   features/all/xen/fix-pci-hook.patch
  (+) OK   features/all/xen/remove-4gb-warning.patch
  (+) OK   features/all/xen/hardcode-xen-makefile.patch
  (+) OK   features/all/xen/suse-20080808143035.patch
  (-) OK   features/all/xen/tip-x86.patch
--> 7-extra fully unapplied.
--> Try to unapply 3-extra.
--> 3-extra fully unapplied.
--> Try to unapply 1-extra.
--> 1-extra fully unapplied.
--> Try to apply 1-extra.
--> 1-extra fully applied.
--> Try to apply 3-extra.
--> 3-extra fully applied.
--> Try to apply 7-extra.
  (-) OK   features/all/xen/tip-x86.patch
  (+) OK   features/all/xen/suse-20080808143035.patch
  (+) OK   features/all/xen/hardcode-xen-makefile.patch
  (+) OK   features/all/xen/remove-4gb-warning.patch
  (+) OK   features/all/xen/fix-pci-hook.patch
--> 7-extra fully applied.
--> Try to apply 9-extra.
  (+) OK   features/all/xen/console-hvc-overtake.patch
--> 9-extra fully applied.
--> Try to apply 10-extra.
  (+) OK   features/all/xen/disable-pat.patch
--> 10-extra fully applied.
--> Try to apply 12-extra.
(+) OK features/all/xen/dom0-fix-processor-throttling-when-pr-id-is-minus-1.patch
--> 12-extra fully applied.
--> Try to apply 14-extra.
--> 14-extra fully applied.
--> Try to apply 15lenny3-extra.
  (+) OK   features/all/xen/i386-hypervisor_callback-adjustments.patch
--> 15lenny3-extra fully applied.
--> Try to apply 16-extra.
  (+) OK   bugfix/x86/arch-ia32-entry-int80-enosys-xen.patch
--> 16-extra fully applied.
--> Try to apply 18-extra.
--> 18-extra fully applied.
--> Try to apply 20-extra.
  (+) OK   features/all/xen/fix-xen-spin-wait.patch
--> 20-extra fully applied.
--> Try to apply 21-extra.
  (+) OK   features/all/xen/update-tick_nohz_stop_sched_tick-api.patch
--> 21-extra fully applied.
--> Try to apply 21lenny2-extra.
  (+) OK   bugfix/all/untangle-the-do_mremap-mess-xen.patch
--> 21lenny2-extra fully applied.
--> Try to apply 21lenny3-extra.
  (+) OK   features/all/xen/get-rid-of-TIF_ABI_PENDING-bit.patch
--> 21lenny3-extra fully applied.
--> Try to apply 21lenny4-extra.
(+) OK features/all/xen/set_personality_ia32-misses-force_personality32.patch
  (+) OK   features/all/xen/printk-robustify-printk-xen.patch
--> 21lenny4-extra fully applied.
--> Try to apply 22-extra.
  (+) OK   features/all/xen/xen-fix-msi-hypercall.patch
  (+) OK   features/all/xen/add-x86-hyper-vendor-defines.patch
--> 22-extra fully applied.
--> Try to apply 23-extra.
--> 23-extra fully applied.

And then I can "make menuconfig" and see xen options! Yay!

But when I actually try to compile it, using the exact same line:

make-kpkg --rootcmd fakeroot --initrd --revision=XXX --added-patches xen kernel_image

It errors out:

...
  INSTALL sound/pci/vx222/snd-vx222.ko
  INSTALL sound/pci/ymfpci/snd-ymfpci.ko
  INSTALL sound/pcmcia/pdaudiocf/snd-pdaudiocf.ko
  INSTALL sound/pcmcia/vx/snd-vxpocket.ko
  INSTALL sound/sound_firmware.ko
  INSTALL sound/soundcore.ko
  INSTALL sound/synth/emux/snd-emux-synth.ko
  INSTALL sound/synth/snd-util-mem.ko
  INSTALL sound/usb/caiaq/snd-usb-caiaq.ko
  INSTALL sound/usb/snd-usb-audio.ko
  INSTALL sound/usb/snd-usb-lib.ko
  INSTALL sound/usb/usx2y/snd-usb-usx2y.ko
  DEPMOD  2.6.26
make[2]: Leaving directory `/usr/src/linux-source-2.6.26'
test ! -e scripts/package/builddeb || mv -f scripts/package/builddeb scripts/package/builddeb.kpkg-dist test ! -e scripts/package/Makefile || test -f scripts/package/Makefile.kpkg-dist || (mv -f scripts/package/Makefile scripts/package/Makefile.kpkg-dist && (echo "# Dummy file "; echo "help:") > scripts/package/Makefile)
test ! -f Documentation/lguest/lguest ||                             \
install -p -o root -g root -m 644 Documentation/lguest/lguest /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/lguest test ! -f /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/lguest || \ chmod 755 /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/lguest test ! -e /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/source || \ mv /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/source ./debian/source-link test ! -e /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/build || \ mv /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/build ./debian/build-link test ! -e ./debian/source-link || \ mv ./debian/source-link /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/source test ! -e ./debian/build-link || \ mv ./debian/build-link /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26/lib/modules/2.6.26/build /sbin/depmod -q -FSystem.map -b /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26 2.6.26;
FATAL: Could not open 'System.map': No such file or directory
make[1]: [debian/stamp/install/linux-image-2.6.26] Error 1 (ignored)
test ! -f System.map ||  cp System.map                         \
/usr/src/linux-source-2.6.26/debian/linux-image-2.6.26//boot/System.map-2.6.26;
test ! -f System.map ||  chmod 644                             \
/usr/src/linux-source-2.6.26/debian/linux-image-2.6.26//boot/System.map-2.6.26; cp arch/x86/boot/bzImage /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26//boot/vmlinuz-2.6.26
cp: cannot stat `arch/x86/boot/bzImage': No such file or directory
make[1]: *** [debian/stamp/install/linux-image-2.6.26] Error 1
make[1]: Leaving directory `/usr/src/linux-source-2.6.26'
make: *** [kernel_image] Error 2
xen1:/usr/src/linux-source-2.6.26#


Why? :-(

I really have no idea what it's complaining about.

Any help or pointing in the right direction would be greatly appreciated. I'd be happy to provide any additional info needed. Thanks!

Tyler

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.