Tyler Morgan
2010-Aug-11 19:24 UTC
[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@lists.xensource.com http://lists.xensource.com/xen-users