Package: kernel-package
Version: 11.001
Severity: important


The upstream 2.6.23 now includes support for running under the Xen hypervisor.
Defining CONFIG_XEN enables support for the Xen paravirt_ops interface.  

However, this is not the same implimentation as was previously available as a
patch and is not a seperate architecture.  The key differences are described
here:

http://lists.xensource.com/archives/html/xen-devel/2007-07/msg00622.html

With 2.6.23, kernels built using CONFIG_XEN can be booted natively (i.e. on the 
real
hardware, with no hypervisor).  However, when the CONFIG_XEN option is present 
in
.config, make-kpkg bombs out with an error trying to build the non-existant xen
architecture (see below).

I have marked this bug as important because even without specific support for 
Xen
kernel packages, make-kpkg should not fail to build a native kernel package
when this option is enabled.  If kernel-package were simply to ignore the 
presence
of the CONFIG_XEN option it would at least be able to build standard natively 
bootable
packages.

Note that to create a package that can be used for native and Xen operation you 
just need
to save the vmlinux file in addition to the bzImage since Xen's domain builder 
is
incompatible with the bzImage format.


$ make-kpkg --rootcmd=fakeroot --revision=test.1 kernel_image
exec make -f /usr/share/kernel-package/ruleset/minimal.mk debian 
DEBIAN_REVISION=test.1  ROOT_CMD=fakeroot 
====== making target minimal_debian [new prereqs: ]======
This is kernel package version .
test -d debian || mkdir debian
test ! -e stamp-building || rm -f stamp-building
test -f debian/control || sed         -e 's/=V/2.6.23/g'        \
                -e 's/=D/test.1/g'         -e 's/=A/i386/g'  \
                -e 's/=SA//g'   -e 's/=L/ /g' \
                -e 's/=I//g'                                    \
                -e 's/=CV/2.6/g'                       \
                -e 's/=M/Unknown Kernel Package Maintainer <[EMAIL 
PROTECTED]>/g'                        
\
                -e 's/=ST/linux/g'      -e 's/=B/xen/g'    \
                         /usr/share/kernel-package/Control > debian/control
test -f debian/changelog ||  sed -e 's/=V/2.6.23/g'             \
            -e 's/=D/test.1/g'        -e 's/=A/i386/g'       \
            -e 's/=ST/linux/g'     -e 's/=B/xen/g'         \
            -e 's/=M/Unknown Kernel Package Maintainer <[EMAIL PROTECTED]>/g'   
                    
\
             /usr/share/kernel-package/changelog > debian/changelog
install -p -m 755 /usr/share/kernel-package/rules debian/rules
for file in ChangeLog  Control  Control.bin86 config templates.in rules; do     
                                 \
            cp -f  /usr/share/kernel-package/$file ./debian/;                   
            \
        done
for dir  in Config docs examples ruleset scripts pkg po;  do                    
                  \
          cp -af /usr/share/kernel-package/$dir  ./debian/;                     
            \
        done
test -d ./debian/stamps || mkdir debian/stamps 
exec debian/rules  DEBIAN_REVISION=test.1  ROOT_CMD=fakeroot  kernel_image 
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -lt: unary operator expected
/bin/sh: line 0: [: -eq: unary operator expected
/bin/sh: line 0: [: -eq: unary operator expected
/bin/sh: line 0: [: -gt: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -gt: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected

====== making target CONFIG-common [new prereqs: testdir]======

====== making target debian/stamp-conf [new prereqs: ]======
# work around idiocy in recent kernel versions
test ! -e scripts/package/builddeb || \
            mv -f scripts/package/builddeb scripts/package/builddeb.kpkg-dist
test ! -e scripts/package/Makefile || \
            (mv -f scripts/package/Makefile scripts/package/Makefile.kpkg-dist 
&& \
               (echo "# Dummy file "; echo "help:") >  scripts/package/Makefile)
test -d debian || mkdir ./debian
test ! -e stamp-building || rm -f stamp-building
test ! -f ./debian || test -f stamp-debian || test -f debian/official || \
               (rm -rf ./debian && mkdir ./debian)
test -f stamp-debian  ||                                           \
          ( test -f debian/official && test -f debian/control) ||          \
           sed -e 's/=V/../g'         -e 's/=D/test.1/g'        \
               -e 's/=A/i386/g'   -e 's/=SA//g'  \
                -e 's/=L/grub,xen-vm, /g' -e 's/=I//g'     \
                -e 's/=CV/./g'                      \
                -e 's/=M/Unknown Kernel Package Maintainer <[EMAIL 
PROTECTED]>/g'                       
\
                -e 's/=ST/linux/g'      -e 's/=B/xen/g'   \
                         /usr/share/kernel-package/Control> debian/control
test -f stamp-debian  ||    test -f debian/official ||                \
           sed -e 's/=V/../g' -e 's/=D/test.1/g'                   \
            -e 's/=A/i386/g' -e 's/=M/Unknown Kernel Package Maintainer 
<[EMAIL PROTECTED]>/g' \            -e 's/=ST/linux/g'     -e 's/=B/xen/g'      
     \
                /usr/share/kernel-package/changelog > debian/changelog
test  -f debian/rules || install -p -m 755 /usr/share/kernel-package/rules 
debian/rules
test  -f stamp-debian || test -f debian/official ||                     \
           for file in ChangeLog  Control  Control.bin86 config templates.in 
rules; do                                      
\
               cp -f  /usr/share/kernel-package/$file ./debian/;                
               \
           done
test  -f stamp-debian || test -f debian/official ||                     \
           for dir  in Config docs examples ruleset scripts pkg po;  do         
                             \
             cp -af /usr/share/kernel-package/$dir  ./debian/;                  
               \
           done
echo done >  stamp-debian
echo done >  debian/stamp-conf
====== making target CONFIG-common [new prereqs: stamp-conf]======
This is kernel package version 11.001.
====== making target stamp-arch-conf [new prereqs: CONFIG-common]======

====== making target CONFIG-arch [new prereqs: stamp-arch-conf]======
====== making target conf.vars [new prereqs: Makefile .config]======

Makefile:492: /home/ben/routing/nsdsl/buildtest/linux-2.6.23/arch/xen/Makefile: 
No such file or directory
make[1]: *** No rule to make target 
`/home/ben/routing/nsdsl/buildtest/linux-2.6.23/arch/xen/Makefile'.  Stop.
make: *** [conf.vars] Error 2




-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-5-xen-686
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)

Versions of packages kernel-package depends on:
ii  dpkg                         1.13.25     package maintenance system for Deb
ii  dpkg-dev                     1.13.25     package building tools for Debian
ii  file                         4.17-5etch3 Determines file type using "magic"
ii  gcc [c-compiler]             4:4.1.1-15  The GNU C compiler
ii  gcc-4.1 [c-compiler]         4.1.1-21    The GNU C compiler
ii  gettext                      0.16.1-1    GNU Internationalization utilities
ii  make                         3.81-2      The GNU version of the "make" util
ii  perl                         5.8.8-7     Larry Wall's Practical Extraction 
ii  po-debconf                   1.0.8       manage translated Debconf template

Versions of packages kernel-package recommends:
ii  bzip2                  1.0.3-6           high-quality block-sorting file co
ii  libc6-dev [libc-dev]   2.3.6.ds1-13etch2 GNU C Library: Development Librari

-- no debconf information



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to