On Mon, Oct 27, 2008 at 03:52:09PM +0100, Michael Holzt wrote:
> Package: kernel-package
> Version: 11.0011
> Severity: normal
> Tags: patch
> 
> When building a current kernel with the in-kernel xen code enabled on amd64,
> kernel-package does not recognize this correctly because it matches on a
> config variable which apparently is no longer set (or maybe even was never 
> used in the in-kernel xen code). The following patch (relative to the path
> /usr/share/kernel-package) fixes that:
> 
> diff -Naur ruleset.orig/arches/amd64.mk ruleset/arches/amd64.mk
> --- ruleset.orig/arches/amd64.mk      2008-10-09 21:18:47.000000000 +0200
> +++ ruleset/arches/amd64.mk   2008-10-27 13:44:12.000000000 +0100
> @@ -51,7 +51,7 @@
>    kimagesrc = $(strip arch/$(IMAGE_SRC_DIR)/boot/$(kimage))
>    kimagedest = $(INT_IMAGE_DESTDIR)/vmlinuz-$(KERNELRELEASE)
>    DEBCONFIG= $(CONFDIR)/config.$(KPKG_SUBARCH)
> -  ifeq ($(strip $(CONFIG_X86_64_XEN)),)
> +  ifeq ($(strip $(CONFIG_XEN)),)
>      kelfimagesrc = vmlinux
>      kelfimagedest = $(INT_IMAGE_DESTDIR)/vmlinux-$(KERNELRELEASE)
>    else

I presume by "in-kernel" xen code you mean the CONFIG_PARAVIRT based
stuff in modern upstream kernels? In that case the kernel is also
capable of running on native and in general special-casing for Xen is no
longer required or desirable. A single CONFIG_PARAVIRT kernel might be
capable of running on lguest, kvm, vmi and/or Xen as well as native.

If I read this patch correctly then its effect is to include the ELF
vmlinux file in the package rather than the bzImage used on native. This
will break booting this kernel on native. The converse is not true as a
modern hypervisor (including the one due to be released in Lenny) knows
how to parse a bzImage type kernel.

What failure were you observing before this patch?

Ian.
-- 
Ian Campbell

An alcoholic is someone you don't like who drinks as much as you do.
                -- Dylan Thomas

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to