Xen 4.0.1-rc2 … source & kernels packaged for Ubuntu

The whole procedure can be run by simple:

wget https://virtualusr.files.wordpress.com/2010/06/mk-xen40x11.doc
catdoc mk-xen40x11.doc > mk-xen40x.sh
sh mk-xen40x.sh

Ubuntu-package latest “xen 4.0″ by:

./packageXen40x.sh RELEASE-4.0.0    # or
./packageXen40x.sh 4.0.1-rc1    # or
./packageXen40x.sh # latest tagged release, today 4.0.1-rc3

Ubuntu-package latest “xensource” kernels by:

# ./remakeXenKernel.sh stable-2.6.31.x 100402212843
#or# ./remakeXenKernel.sh stable-2.6.31.x f3d5fe8050
# ./remakeXenKernel.sh stable-2.6.32.x 100430201127
#or# ./remakeXenKernel.sh stable-2.6.32.x 4dd582f35f
# ./remakeXenKernel.sh stable-2.6.32.x 100517202304
#or# ./remakeXenKernel.sh stable-2.6.32.x ba739f9abd
# ./remakeXenKernel.sh stable-2.6.33.x # picks up the last commit

The same can be done even more Ubuntu-Debian-way with
# ./kpkgXenKernel.sh stable-2.6.32.x 100517202304

* The above are commit examples known to more or less work
* List of all available (last1000) commit-id-s sorted by UTC time stamp of the CommitDate: to xen/stable-2.6.32.x can be seen here /usr/src/build/xen01/stable-2.6.32.x-*.git.log .  Feel free to test any of them and let us know if they are any good.

I have noticed that most of commits are broken. Does anybody know how to track better working commits on kernel git repository?

It feels like this is maturing into a quite useful tool. Changes since the last post:

  • Latest xen-4.0_4.0.1rc1-0ubuntu1.diff.gz proves to be applicable to newer release. Script has been modified to automatically apply latest diff.gz in attempt to build later release candidates. Let’s hope it will work for some time… It would probably build RELEASE-4.0.0 also (only grub2 patch would be missing).
  • Some examples for my grub2 config, and latest ssvnc and x11vnc packages are also included.

I am running ssvnc ovet SSL on laptop and dom0 to access x11vnc xsession on  domU. I have two bigger issues:

1. gnome-session manager or openbox-session break international keyboard mappings on x11vnc session. Openbox without session manager works.

2. All kernels after 2.6.13.12-xen do not set international keyboard mappings correctly. I have to set them manually after startx by

# setxkbmap -layout de -print | xkbcomp – ${DISPLAY%%.*} 2> /dev/null

After that I press Ctrl+P and some more Ctr-keys until terminal dies (only once). After that everything seems to work as normal.

Comments on my config examples are very welcome.

Enjoy Ubuntu Xen4.0 server

* Updated 2010-06-19  Load the xen-evtchn module only if needed, if device /dev/xen/evtchn is missing.

* Updated 2010-06-21  Major cleanup. One diff.gz for all versions. Creates all inclusive orig.source.gz skipping downloads on repeated builds.

* Updated 2010-06-30

– Added the very important missing xen-4.0-0ubuntu1.diff.gz for all versions. This was a big mistake making this post unusable since the 21st of Jun, SORRY.

– One line was missing in packageXen40x.sh to update xen repository every time it is run without version argument. Previous version could not automatically pick up 4.0.1-rc3, this can and does the build without error.

– Bruce Edge reminded me to retry standard ubuntus “make-kpkg kernel-image” which was broken when I started. Now it seems to be working again. I added a script for really Ubuntu-way of packaging kpkgXenKernel.sh. It’s practically the same as the older remakeXenKernel.sh except the “make-kpkg (Ubuntu) vs deb-pkg (Linux Kernel source)”.
If one of them fails to build you can try the other.

Advertisements
This entry was posted in Xen. Bookmark the permalink.

21 Responses to Xen 4.0.1-rc2 … source & kernels packaged for Ubuntu

  1. Adrian St. says:

    Hello again,

    kudos to you, the script is just brilliant!

    Though I have noticed one small problem using your kernel-headers which isn’t posted on Launchpad: Having installed “linux-headers-2.6.32.12-xen” /lib/modules/2.6.32.12-xen/build and /lib/modules/2.6.32.12-xen/source link uncorrectly to your sources in /usr/src/build. After deleting those links and doing a “ln -s /usr/src/linux-headers-2.6.32.12-xen /lib/modules/2.6.32.12-xen/build” I could compile my DRBD modules through DKMS.

  2. Adrian St. says:

    One more thing,

    I’ve patched the 09_xen from Launchpad. It should be more flexible.
    You can get it here: http://zer0.de/stuff/09_xen.zip

  3. Bruce Edge says:

    Hi,
    Great work on these. Here’s a few things I noticed.

    Still need to chmod +x debian/rules for the Xen build

    Also, the kernel firmware package has a conflict on a fresh 10.04 system:

    dpkg: error processing /import/kaan/bedge/src/xen/virtualusr/build/xen01/linux-firmware-image_100430201127_all.deb (–install):
    trying to overwrite ‘/lib/firmware/ti_5052.fw’, which is also in package linux-firmware 0:1.34
    dpkg-deb: subprocess paste killed by signal (Broken pipe)
    Setting up linux-image-2.6.32.12-xen (100430201127) …

    Lastly, what would be great is if there were an option to include gdbsx, kdb, and the xen VM debugging suite. There would be no reason to go anywhere else then 🙂

    -Bruce

    • virtualusr says:

      Hi Bruce

      If you use remakeXenKernel.sh, then you should replace ubuntus linux-firmware 0:1.34 by the one that is built by the script.

      Regards

  4. luca says:

    iḿ trying your script on a fresh lucid installation.
    cd /root
    wget https://virtualusr.files.wordpress.com/2010/06/mk-xen40x10.doc
    catdoc mk-xen40x10.doc > mk-xen40x.sh
    ./packageXen40x.sh RELEASE-4.0.0

    it seems it did not download some files.
    below the error (sorry for the italian os)

    gzip: /root/xen-4.0-0ubuntu1.diff.gz: No such file or directory
    chmod: impossibile accedere a `debian/makeiOrigSource.sh’: Nessun file o directory
    ./packageXen40x.sh: riga 41: debian/makeiOrigSource.sh: Nessun file o directory
    Info: Unpack xen-4.0_4.0.0.orig.tar.gz …
    tar: xen-4.0_4.0.0.orig.tar.gz: funzione “open” non riuscita: Nessun file o directory
    tar: Errore irrimediabile: uscita immediata
    tar: Child returned status 2
    tar: Uscita con stato di fallimento in base agli errori precedenti
    mv: impossibile fare stat di `xen-4.0-4.0.0.orig’: Nessun file o directory
    ./packageXen40x.sh: riga 45: cd: /usr/src/build/400/xen-4.0-4.0.0: Nessun file o directory

    thx for helping

    • virtualusr says:

      Hi Luca

      Thanks for pointing to the missing file. This was a big mistake. A big Sorry to everybody for this post being broken since the 21st until today.

      Regards

  5. Bruce Edge says:

    I can’t tell what’s wrong with the ./remakeXenKernel.sh script, it’s calling make-kpkg with -initrd, but it’s not generating the initrd bits in the image postinst, or updating grub.cfg.

    Here’s the postinst from your scripted package generation:

    #!/bin/sh

    set -e

    # Pass maintainer script parameters to hook scripts
    export DEB_MAINT_PARAMS=”$*”

    test -d /etc/kernel/postinst.d && run-parts –arg=”2.6.32.15-xen” /etc/kernel/postinst.d
    exit 0

    and here’s the postinst from my make-kpkg:
    #!/usr/bin/perl
    # -*- Mode: Cperl -*-
    # debian.postinst —
    # Author : Manoj Srivastava ( srivasta@pilgrim.umass.edu )
    # Created On : Sat Apr 27 05:42:43 1996
    # Created On Node : melkor.pilgrim.umass.edu
    # Last Modified By : Manoj Srivastava
    # Last Modified On : Mon Apr 13 14:24:56 2009
    # Last Machine Used: anzu.internal.golden-gryphon.com
    # Update Count : 44
    # Status : Unknown, Use with caution!
    # HISTORY :
    # Description :
    #
    #
    #
    # arch-tag: ae5907e4-2617-4db5-964a-1b5f45bedc1a
    #

    $|=1;

    # Predefined values:
    my $package=”linux-source-2.6.32.15″;
    my $version=”2.6.32.15″;

    my $kernel_pkg_version = “12.032”;

    # Ignore all invocations uxcept when called on to configure.
    exit 0 unless ($ARGV[0] && $ARGV[0] =~ /configure/);

    my $architecture;
    chomp($architecture = `dpkg –print-installation-architecture`);
    $architecture = “ppc” if $architecture eq “powerpc”;
    $architecture = “parisc” if $architecture eq “hppa”;
    $architecture = “mips” if $architecture eq “mipsel”;
    $architecture = “x86_64” if $architecture eq “amd64”;

    my $stop_and_read = 0;
    my $have_conffile = “”;
    my $src_postinst_hook = ”;
    my $CONF_LOC = ‘/etc/kernel-img.conf’;

    # most of our work is done in /usr/src.
    chdir ‘/usr/src’ or die “Could not chdir to /usr/src:$!”;

    if (-r “$CONF_LOC” && -f “$CONF_LOC” ) {
    if (open(CONF, “$CONF_LOC”)) {
    while () {
    chomp;
    s/\#.*$//g;
    next if /^\s*$/;

    $src_postinst_hook = “$1” if /src_postinst_hook\s*=\s*(\S+)/ig;
    }
    close CONF;
    $have_conffile = “Yes”;
    }
    }

    sub exec_script {
    my $type = shift;
    my $script = shift;
    print STDERR “Running $type hook script $script.\n”;
    system (“$script $version $realimageloc$kimage-$version”) &&
    print STDERR “User $type hook script [$script] “;
    if ($?) {
    if ($? == -1) {
    print STDERR “failed to execute: $!\n”;
    }
    elsif ($? & 127) {
    printf STDERR “died with signal %d, %s coredump\n”,
    ($? & 127), ($? & 128) ? ‘with’ : ‘without’;
    }
    else {
    printf STDERR “exited with value %d\n”, $? >> 8;
    }
    exit $? >> 8;
    }
    }
    sub run_hook {
    my $type = shift;
    my $script = shift;
    if ($script =~ m,^/,) {
    # Full path provided for the hook script
    if (-x “$script”) {
    &exec_script($type,$script);
    }
    else {
    die “The provided $type hook script [$script] could not be run.\n”;
    }
    }
    else {
    # Look for it in a safe path
    for my $path (‘/bin’, ‘/sbin’, ‘/usr/bin’, ‘/usr/sbin’) {
    if (-x “$path/$script”) {
    &exec_script($type, “$path/$script”);
    return 0;
    }
    }
    # No luck
    print STDERR “Could not find $type hook script [$script].\n”;
    die “Looked in: ‘/bin’, ‘/sbin’, ‘/usr/bin’, ‘/usr/sbin’\n”;
    }
    }

    # Set up the env variable containing our arguments
    my $out;
    for (@ARGV) {
    s,’,’\\”,g;
    $out.=” ‘$_'”;
    }
    $ENV{‘DEB_MAINT_PARAMS’}=”$out”;
    $ENV{‘KERNEL_PACKAGE_VERSION’}=”$kernel_pkg_version”;

    ## Run user hook script here, if any
    if (-d “/etc/kernel/src_postinst.d”) {
    print STDERR “Examining /etc/kernel/src_postinst.d.\n”;
    system (“run-parts –verbose –exit-on-error –arg=$version ” .
    “–arg=$realimageloc$kimage-$version ” .
    “/etc/kernel/src_postinst.d”) &&
    die “Failed to process /etc/kernel/src_postinst.d”;
    }

    if (-d “/etc/kernel/src_postinst.d/$version”) {
    print STDERR “Examining /etc/kernel/src_postinst.d/$version.\n”;
    system (“run-parts –verbose –exit-on-error –arg=$version ” .
    “–arg=$realimageloc$kimage-$version ” .
    “/etc/kernel/src_postinst.d/$version”) &&
    die “Failed to process /etc/kernel/src_postinst.d/$version”;
    }

    if (-x “$src_postinst_hook”) {
    &run_hook(“postinst”, $src_postinst_hook);
    }

    exit 0;

    __END__

    Why the difference?

  6. Bruce Edge says:

    OK, figured out the initrd thing, you’re using
    fakeroot make -j$CONCURRENCY_LEVEL deb-pkg
    to build the kernel image. This does not “do all the right ubuntu things”
    You only use make-kpkg for the header and source packages.
    Please consider this diff:

    #> diff -Naur remakeXenKernel.sh.orig remakeXenKernel.sh
    — remakeXenKernel.sh.orig 2010-06-23 14:37:19.062479493 -0700
    +++ remakeXenKernel.sh 2010-06-24 10:46:41.482479522 -0700
    @@ -1,4 +1,4 @@
    -#!/bin/bash
    +#!/bin/bash -x
    # remakeXenKernel.sh
    # Use:
    # ./remakeXenKernel.sh stable-2.6.31.x 100402212843 #or# ./remakeXenKernel.sh stable-2.6.31.x f3d5fe8050
    @@ -10,7 +10,7 @@

    #####
    MYTRY=01
    -WRKD=/usr/src
    +WRKD=$PWD/usr/src
    export CONCURRENCY_LEVEL=$(cat /proc/cpuinfo | grep processor | nl | sed -n ‘$=’)
    #####

    @@ -114,35 +114,28 @@
    echo “Right? (If not press CTRL-C to break… sleeping 10 s before continuing…)”; sleep 10s
    make-kpkg –revision=$KDEB_PKGVERSION clean
    [ 0 -ne $? ] && echo “WARNING: make-kpkg –revision=$KDEB_PKGVERSION clean FAILED.” && read BLA
    – fakeroot make -j$CONCURRENCY_LEVEL deb-pkg
    – if [ 0 -ne $? ]; then
    – echo “ERROR: fakeroot make -j$CONCURRENCY_LEVEL deb-pkg FAILED. returning.”
    – echo ” If you want to inspect press CTRL-C to break the build… sleeping 30 s before continuing…”; sleep 30s
    – _RT=3
    – else
    – fakeroot make-kpkg –initrd –revision=$KDEB_PKGVERSION kernel_headers kernel_source
    – [ 0 -ne $? ] && \
    – echo “WARNING: make-kpkg –initrd –revision=$KDEB_PKGVERSION kernel_headers kernel_source FAILED.” && \
    – echo ” You might use original source $WRKD/wget/$ARCHNAME.tar.bz2 instead.” && read BLA
    – cd $WRKD/
    – mv -v $CFGFILE \
    – linux-firmware-image_${KDEB_PKGVERSION}_all.deb \
    – linux-image-${KERNELRELEASE}_${KDEB_PKGVERSION}_${HARCH}.deb \
    – linux-headers-${KERNELRELEASE}_${KDEB_PKGVERSION}_${HARCH}.deb \
    – linux-source-${KERNELRELEASE}_${KDEB_PKGVERSION}_all.deb \
    – xen$MYTRY/
    – ln -sv $WRKD/wget/$ARCHNAME.tar.bz2 xen$MYTRY/
    – BOOTPART=false; mount | grep ‘ /boot ‘ && BOOTPART=true
    – echo; echo “# Install by running…”
    – echo cd $WRKD/xen$MYTRY/
    – $BOOTPART && echo “mount | grep ‘ /boot .*(ro’ && sudo mount -v -o remount,rw /boot”
    – echo sudo dpkg -i linux-image-${KERNELRELEASE}_${KDEB_PKGVERSION}_${HARCH}.deb
    – echo sudo update-initramfs -c -k $KERNELRELEASE #mkinitrd -o /boot/initrd.img-2.6.12 2.6.12
    – echo sudo update-grub
    – $BOOTPART && echo “mount | grep ‘ /boot .*(rw’ && sudo mount -v -o remount,ro /boot”
    – echo cd –
    – _RT=0
    – fi
    + fakeroot make-kpkg –initrd –revision=$KDEB_PKGVERSION kernel_image kernel_headers kernel_source
    + [ 0 -ne $? ] && \
    + echo “WARNING: make-kpkg –initrd –revision=$KDEB_PKGVERSION kernel_headers kernel_source FAILED.” && \
    + echo ” You might use original source $WRKD/wget/$ARCHNAME.tar.bz2 instead.” && read BLA
    + cd $WRKD/
    + mv -v $CFGFILE \
    + linux-firmware-image_${KDEB_PKGVERSION}_all.deb \
    + linux-image-${KERNELRELEASE}_${KDEB_PKGVERSION}_${HARCH}.deb \
    + linux-headers-${KERNELRELEASE}_${KDEB_PKGVERSION}_${HARCH}.deb \
    + linux-source-${KERNELRELEASE}_${KDEB_PKGVERSION}_all.deb \
    + xen$MYTRY/
    + ln -sv $WRKD/wget/$ARCHNAME.tar.bz2 xen$MYTRY/
    + BOOTPART=false; mount | grep ‘ /boot ‘ && BOOTPART=true
    + echo; echo “# Install by running…”
    + echo cd $WRKD/xen$MYTRY/
    + $BOOTPART && echo “mount | grep ‘ /boot .*(ro’ && sudo mount -v -o remount,rw /boot”
    + echo sudo dpkg -i linux-image-${KERNELRELEASE}_${KDEB_PKGVERSION}_${HARCH}.deb
    + echo sudo update-initramfs -c -k $KERNELRELEASE #mkinitrd -o /boot/initrd.img-2.6.12 2.6.12
    + echo sudo update-grub
    + $BOOTPART && echo “mount | grep ‘ /boot .*(rw’ && sudo mount -v -o remount,ro /boot”
    + echo cd –
    + _RT=0
    rm -rf $WRKD/$ARCHNAME/
    return ${_RT}
    } # buildIt()

  7. Bruce Edge says:

    The diff makes it look mode complex that it is, I just added kernel-image to the make-kpkg targets and removed the deb-pkg invokation.

    • virtualusr says:

      Hi Bruce

      Thanks for your comment. I added the script kpkgXenKernel.sh to do it the Ubuntu-way. I like it much better this way also and recommend for everybody to use it. I was earlier forced to go Linux-kernel way as make-kpkg did not work. If the new script fails, one can still use the old one.

      Regards

  8. Bruce Edge says:

    I have to have these in my dom0 kernel
    CONFIG_FIRMWARE_IN_KERNEL=y
    CONFIG_BNX2=y
    How would you recommend adding config items to your build architecture?
    …other than editing the remakeXenKernel.sh script?

    How about picking up a .config in the $PWD if it exists instead of calling expect_make_oldconfig?

    -Bruce

    • virtualusr says:

      Hi Bruce
      I was thinking about that. Not a bad idea, to pick .config if you already have one. Next time I have time to update the script I’ll do it.
      Regards

  9. Bruce Edge says:

    Who maintains the one big patch, xen-4.0-0ubuntu1.diff.gz ?

    I’d like to add some changes to it, but where’s the upstream source? Is it yours?

    To enable the gdbsx debugger one must build xen with ‘make gdbsx=yes’. This needs to be folded into the above patch.

    -Bruce

    • virtualusr says:

      Hi Bruce

      Yes this is my patch, started from previous on this Ubuntu-bugs thread referenced in my first blog post, but heavily simplified and cleaned up.
      Suggest changes – optionally – as most of us will just want to use basic xen.
      I only plan one fine tuning of the patch myself and that is to double check all patches in debian/patch*/ and exclude as many as possible to become as vanilla Xen as possible, and simplify debian/rules to two steps only 1. build all vanilla, and 2. build additions. I do not know when I will get the time to do that… , as the current package is quite cool already, I think.

      Regards

      • Bruce Edge says:

        My only complaint is that it’s hard to make xen source changes and still use this packaging mechanism.
        Could you add some interim targets that leave the extracted source somewhere that one can edit, then pick up the build without clobbering it?

      • virtualusr says:

        Hi Bruce

        The interim target already exists “debian/rules debian/stamps/setup-patch”
        source gets copied to debian/build/source/ and there you make your changes.

        As far as I understood the latest debian packaging recommendations all patches should be applied with the quilt tool, a bit more complicated as making changes directly but not that hard when you try it a couple of times. Basically:
        1. you configure a new patch name
        2. You make all changes to all related files
        3. Execute “quilt refresh” to include all your changes to the new patch you created ad.1
        See the quilt documentation and set your shell variables as in target “debian/rules debian/stamps/setup-patch”. before you start…
        … and you can continue by running all other targets manually like
        debian/rules binary
        Regards

  10. Bruce Edge says:

    How do you get around things like this where it’s looking for xen libs as part of dpkg-buildpackage?

    -L../../tools/libxc -lxenctrl -L../../tools/libxc -lxenctrl -o libvhd.so.1.0.0 -luuid libvhd.o libvhd-journal.o vhd-util-coalesce.o vhd-util-create.o vhd-util-fill.o vhd-util-modify.o vhd-util-query.o vhd-util-read.o vhd-util-repair.o vhd-util-resize.o vhd-util-revert.o vhd-util-set-field.o vhd-util-snapshot.o vhd-util-scan.o vhd-util-check.o relative-path.o atomicio.o ../../lvm/lvm-util.o
    /usr/bin/ld: cannot find -lxenctrl
    collect2: ld returned 1 exit status

    I tried to make the packages without using your script so that I could edit the interim stages and got hung up on missing libs.

  11. Bruce Edge says:

    Any plans for a xen 4.1 build from xen-unstable.hg?

    • virtualusr says:

      Hi Bruce

      Of course, as long as some better solution is not offered somewhere else…

      I do not expect this to be hard to maintain and I am using this myself.

      An attempt is made that all newer releases *should* build automatically. (4.0.1.rc3 did here without any changes)

      If not, please complain and I’ll take a look.

      Regards

      • Bruce Edge says:

        There’s no mechanism in the packageXen40x.sh script to pull down the 4.1 unstable tree.
        I took a crack at it. Here are the patches. It builds, but some of the package names are still 4,0 instead of 4.1:

        ./usr/src/build/400/libxen4_4.0.0branched-0ubuntu1_amd64.deb
        ./usr/src/build/400/libxen4-dev_4.0.0branched-0ubuntu1_amd64.deb
        ./usr/src/build/400/xen-utils-4.1_4.0.0branched-0ubuntu1_amd64.deb
        ./usr/src/build/400/xen-hypervisor-4.1_4.0.0branched-0ubuntu1_amd64.deb
        ./usr/src/build/400/python-xen-4.1_4.0.0branched-0ubuntu1_amd64.deb
        ./usr/src/build/400/xen-docs-4.1_4.0.0branched-0ubuntu1_all.deb

        1 %> diff -Naur packageXen40x.sh packageXen41x.sh

        — packageXen40x.sh 2010-07-05 16:17:37.000000000 -0700
        +++ packageXen41x.sh 2010-07-05 17:40:33.000000000 -0700
        @@ -1,14 +1,14 @@
        #!/bin/bash -x
        # http://bderzhavets.wordpress.com/2010/04/24/set-up-ubuntu-10-04-server-pv-domu-at-xen-4-0-dom0-pvops-2-6-32-10-kernel-dom0-on-top-of-ubuntu-10-04-server/
        -# ./packageXen40x.sh RELEASE-4.0.0
        -# ./packageXen40x.sh 4.0.1-rc1
        -# ./packageXen40x.sh # pickup the latest # 4.0.1-rc2
        +# ./packageXen40x.sh RELEASE-4.1.0
        +# ./packageXen40x.sh 4.1.1-rc1
        +# ./packageXen40x.sh # pickup the latest # 4.1.1-rc2
        LREL=$1

        sudo apt-get install libcurl4-openssl-dev xserver-xorg-dev mercurial gitk build-essential libncurses5-dev uuid-dev gawk gettext texinfo bcc libncurses5-dev dpkg-dev debhelper iasl texinfo catdvi fakeroot bison flex
        sudo apt-get build-dep xen-3.3

        -REPOS=xen-4.0-testing.hg
        +REPOS=xen-unstable.hg
        REPURL=http://xenbits.xensource.com/$REPOS

        WRKD=$PWD/usr/src/build/400
        @@ -26,16 +26,17 @@
        cd $WRKD
        [ -d $REPOS ] || hg clone $REPURL #http://xenbits.xensource.com/$REPOS
        cd $WRKD/$REPOS
        – LREL=$(hg tags | sed ‘/^tip\b /d’ | sed -n ‘1 s/ *.*//p’) # RELEASE-4.0.0
        + LREL=$(hg tags | sed ‘/^tip\b /d’ | sed -n ‘1 s/ *.*//p’) # RELEASE-4.1.0
        hg pull; hg update
        fi
        -RELTAG=$(echo $LREL | sed ‘s/^RELEASE-//;s/-\([^-]*\)$/\1/’) # 4.0.0
        +RELTAG=$(echo $LREL | sed ‘s/^RELEASE-//;s/-\([^-]*\)$/\1/’) # 4.1.0
        DEBNAM=xen-$(echo $RELTAG | sed ‘s/\.[^.]*$//’)_$RELTAG
        DEBDIRNAM=$(echo $DEBNAM | sed ‘s/_/-/’)
        ORIGZ=$DEBNAM.orig.tar.gz
        echo Making the source orig.gz LREL=$LREL= RELTAG=$RELTAG=; sleep 2
        rm -rf $WRKD/.make.orig; mkdir -p $WRKD/.make.orig; cd $WRKD/.make.orig
        UDIFNAME=xen-$(echo $RELTAG | sed ‘s/\.[^.]*$//’)-0ubuntu1.diff.gz
        +UDIFNAME=xen-4.1-0ubuntu1.diff.gz
        #DIFNAME=$DEBNAM-0ubuntu1.diff.gz
        zcat $STARTDIR/$UDIFNAME | patch -p1
        chmod 755 debian/makeiOrigSource.sh
        @@ -47,7 +48,7 @@
        echo Info: Patch with debian diff $UDIFNAME …
        zcat $STARTDIR/$UDIFNAME | patch -p1
        echo Info: Tag change log with the version: $RELTAG-0ubuntu1
        -test “$RELTAG” != “4.0.0” && \
        +test “$RELTAG” != “4.1.0” && \
        dch -b –newversion $RELTAG-0ubuntu1 “New upstream version.”
        head debian/changelog; sleep 1 && $DEVEL && echo cd $WRKD/$DEBDIRNAM && exit

        %> diff -Naur xen-4.0-0ubuntu1.diff xen-4.1-0ubuntu1.diff

        — xen-4.0-0ubuntu1.diff 2010-07-06 06:44:00.000000000 -0700
        +++ xen-4.1-0ubuntu1.diff 2010-07-06 06:44:00.000000000 -0700
        @@ -1,5 +1,5 @@
        —- xen-4.0-4.0.0.orig/debian/xen-utils-4.0.postrm
        -+++ xen-4.0-4.0.0/debian/xen-utils-4.0.postrm
        +— xen-4.1-4.1.0.orig/debian/xen-utils-4.1.postrm
        ++++ xen-4.1-4.1.0/debian/xen-utils-4.1.postrm
        @@ -0,0 +1,22 @@
        +#!/bin/sh
        +
        @@ -23,13 +23,13 @@
        +#DEBHELPER#
        +
        +exit 0
        —- xen-4.0-4.0.0.orig/debian/pycompat
        -+++ xen-4.0-4.0.0/debian/pycompat
        +— xen-4.1-4.1.0.orig/debian/pycompat
        ++++ xen-4.1-4.1.0/debian/pycompat
        @@ -0,0 +1,2 @@
        +2
        +
        —- xen-4.0-4.0.0.orig/debian/xen-hypervisor-4.0.postrm
        -+++ xen-4.0-4.0.0/debian/xen-hypervisor-4.0.postrm
        +— xen-4.1-4.1.0.orig/debian/xen-hypervisor-4.1.postrm
        ++++ xen-4.1-4.1.0/debian/xen-hypervisor-4.1.postrm
        @@ -0,0 +1,23 @@
        +#!/bin/bash
        +
        @@ -54,8 +54,8 @@
        +#DEBHELPER#
        +
        +exit 0
        —- xen-4.0-4.0.0.orig/debian/xen-utils-4.0.postinst
        -+++ xen-4.0-4.0.0/debian/xen-utils-4.0.postinst
        +— xen-4.1-4.1.0.orig/debian/xen-utils-4.1.postinst
        ++++ xen-4.1-4.1.0/debian/xen-utils-4.1.postinst
        @@ -0,0 +1,24 @@
        +#!/bin/sh
        +
        @@ -81,16 +81,16 @@
        +#DEBHELPER#
        +
        +exit 0
        —- xen-4.0-4.0.0.orig/debian/python-xen-4.0.install
        -+++ xen-4.0-4.0.0/debian/python-xen-4.0.install
        +— xen-4.1-4.1.0.orig/debian/python-xen-4.1.install
        ++++ xen-4.1-4.1.0/debian/python-xen-4.1.install
        @@ -0,0 +1 @@
        +usr/lib/python*
        —- xen-4.0-4.0.0.orig/debian/docs
        -+++ xen-4.0-4.0.0/debian/docs
        +— xen-4.1-4.1.0.orig/debian/docs
        ++++ xen-4.1-4.1.0/debian/docs
        @@ -0,0 +1 @@
        +README
        —- xen-4.0-4.0.0.orig/debian/xen-utils-4.0.install
        -+++ xen-4.0-4.0.0/debian/xen-utils-4.0.install
        +— xen-4.1-4.1.0.orig/debian/xen-utils-4.1.install
        ++++ xen-4.1-4.1.0/debian/xen-utils-4.1.install
        @@ -0,0 +1,8 @@
        +usr/sbin/*
        +usr/bin/*
        @@ -100,18 +100,18 @@
        +usr/share/man/*
        +usr/lib/xen/*
        +usr/share/xen/qemu/*
        —- xen-4.0-4.0.0.orig/debian/changelog
        -+++ xen-4.0-4.0.0/debian/changelog
        +— xen-4.1-4.1.0.orig/debian/changelog
        ++++ xen-4.1-4.1.0/debian/changelog
        @@ -0,0 +1,788 @@
        -+xen-4.0 (4.0.0-0ubuntu1) karmic; urgency=low
        ++xen-4.1 (4.0.0-0ubuntu1) karmic; urgency=low
        +
        + * New upstream version
        + * Add grub2-fix.patch pygrub: Fix Grub2 support for Ubuntu 10.04
        -+ * Moved 40-xen-utils-4.0.rules to 40-xen-hypervisor-4.0.rules
        ++ * Moved 40-xen-utils-4.1.rules to 40-xen-hypervisor-4.1.rules
        + * Quilt resync patches
        + * Script to create source orig.gz
        + * Automated rebuild atempt of newer release candidates,
        -+ works for 4.0.1.rc2
        ++ works for 4.1.1.rc2
        + * Major cleanup
        +
        + — User Virtual Mon, 21 Jun 2010 16:00:00 +0100
        @@ -891,17 +891,17 @@
        + * Initial version.
        +
        + — Adam Heath Tue, 02 Mar 2004 13:21:52 -0600
        —- xen-4.0-4.0.0.orig/debian/makeiOrigSource.sh
        -+++ xen-4.0-4.0.0/debian/makeiOrigSource.sh
        +— xen-4.1-4.1.0.orig/debian/makeiOrigSource.sh
        ++++ xen-4.1-4.1.0/debian/makeiOrigSource.sh
        @@ -0,0 +1,55 @@
        +#!/bin/sh
        -+# debian/makeiOrigSource.sh RELEASE-4.0.0
        -+# debian/makeiOrigSource.sh 4.0.1-rc1
        -+# debian/makeiOrigSource.sh # pickup the latest # 4.0.1-rc2
        ++# debian/makeiOrigSource.sh RELEASE-4.1.0
        ++# debian/makeiOrigSource.sh 4.1.0-rc1
        ++# debian/makeiOrigSource.sh # pickup the latest # 4.1.0-rc2
        +LREL=$1
        +
        +export DEBEMAIL=”User Virtual ”
        -+REPOS=xen-4.0-testing.hg
        ++REPOS=xen-unstable.hg
        +REPURL=http://xenbits.xensource.com/$REPOS
        +STARTDIR=$(pwd)
        +WRKD=$(cd ..;pwd)
        @@ -911,9 +911,9 @@
        +cd $WRKD/$REPOS
        +hg pull; hg update
        +if [ -z “$LREL” ]; then
        -+ LREL=$(hg tags | sed ‘/^tip\b /d’ | sed -n ‘1 s/ *.*//p’) # RELEASE-4.0.0
        ++ LREL=$(hg tags | sed ‘/^tip\b /d’ | sed -n ‘1 s/ *.*//p’) # RELEASE-4.1.0
        +fi
        -+RELTAG=$(echo $LREL | sed ‘s/^RELEASE-//;s/-\([^-]*\)$/\1/’) # 4.0.0
        ++RELTAG=$(echo $LREL | sed ‘s/^RELEASE-//;s/-\([^-]*\)$/\1/’) # 4.1.0
        +DEBNAM=xen-$(echo $RELTAG | sed ‘s/\.[^.]*$//’)_$RELTAG
        +DEBDIRNAM=$(echo $DEBNAM | sed ‘s/_/-/’)
        +ORIGZ=$DEBNAM.orig.tar.gz
        @@ -949,13 +949,13 @@
        +tar czf $ORIGZ $DEBDIRNAM.orig \
        +&& rm -rf $DEBDIRNAM.orig
        +rm $GETSCR
        —- xen-4.0-4.0.0.orig/debian/libxen4.install
        -+++ xen-4.0-4.0.0/debian/libxen4.install
        +— xen-4.1-4.1.0.orig/debian/libxen4.install
        ++++ xen-4.1-4.1.0/debian/libxen4.install
        @@ -0,0 +1,2 @@
        +usr/lib/lib*.so.*
        +usr/lib/fs/*/fsimage.so
        —- xen-4.0-4.0.0.orig/debian/xen-utils-4.0.README.Debian
        -+++ xen-4.0-4.0.0/debian/xen-utils-4.0.README.Debian
        +— xen-4.1-4.1.0.orig/debian/xen-utils-4.1.README.Debian
        ++++ xen-4.1-4.1.0/debian/xen-utils-4.1.README.Debian
        @@ -0,0 +1,95 @@
        +Xen for Debian
        +————–
        @@ -1052,8 +1052,8 @@
        +
        +Guido Trotter, for the Debian Xen Team.
        +(with a litte help from Ralph Passgang)
        —- xen-4.0-4.0.0.orig/debian/xen-hypervisor-4.0.postinst
        -+++ xen-4.0-4.0.0/debian/xen-hypervisor-4.0.postinst
        +— xen-4.1-4.1.0.orig/debian/xen-hypervisor-4.1.postinst
        ++++ xen-4.1-4.1.0/debian/xen-hypervisor-4.1.postinst
        @@ -0,0 +1,23 @@
        +#!/bin/bash
        +
        @@ -1078,8 +1078,8 @@
        +#DEBHELPER#
        +
        +exit 0
        —- xen-4.0-4.0.0.orig/debian/xen-utils-4.0.preinst
        -+++ xen-4.0-4.0.0/debian/xen-utils-4.0.preinst
        +— xen-4.1-4.1.0.orig/debian/xen-utils-4.1.preinst
        ++++ xen-4.1-4.1.0/debian/xen-utils-4.1.preinst
        @@ -0,0 +1,22 @@
        +#!/bin/sh
        +
        @@ -1103,8 +1103,8 @@
        +fi
        +
        +#DEBHELPER#
        —- xen-4.0-4.0.0.orig/debian/lnkPatches.sh
        -+++ xen-4.0-4.0.0/debian/lnkPatches.sh
        +— xen-4.1-4.1.0.orig/debian/lnkPatches.sh
        ++++ xen-4.1-4.1.0/debian/lnkPatches.sh
        @@ -0,0 +1,26 @@
        +#!/bin/sh
        +#
        @@ -1132,21 +1132,21 @@
        +fi
        +#else No linking needed
        +exit 0
        —- xen-4.0-4.0.0.orig/debian/compat
        -+++ xen-4.0-4.0.0/debian/compat
        +— xen-4.1-4.1.0.orig/debian/compat
        ++++ xen-4.1-4.1.0/debian/compat
        @@ -0,0 +1 @@
        +4
        —- xen-4.0-4.0.0.orig/debian/libxen4-dev.install
        -+++ xen-4.0-4.0.0/debian/libxen4-dev.install
        +— xen-4.1-4.1.0.orig/debian/libxen4-dev.install
        ++++ xen-4.1-4.1.0/debian/libxen4-dev.install
        @@ -0,0 +1,4 @@
        +usr/include/xen/*
        +usr/include/*
        +usr/lib/lib*.so
        +usr/lib/lib*.a
        —- xen-4.0-4.0.0.orig/debian/control
        -+++ xen-4.0-4.0.0/debian/control
        +— xen-4.1-4.1.0.orig/debian/control
        ++++ xen-4.1-4.1.0/debian/control
        @@ -0,0 +1,71 @@
        -+Source: xen-4.0
        ++Source: xen-4.1
        +Section: misc
        +Priority: extra
        +Maintainer: Chuck Short
        @@ -1154,7 +1154,7 @@
        +XS-Python-Version: all
        +Standards-Version: 3.7.3.0
        +
        -+Package: xen-hypervisor-4.0
        ++Package: xen-hypervisor-4.1
        +Architecture: i386 amd64
        +Provides: xen-hypervisor, xen-hypervisor-i386, xen-hypervisor-amd64
        +Description: The Xen Hypervisor for i386 and amd64.
        @@ -1170,9 +1170,9 @@
        + This version of the hypervisor is built with support for systems with up to
        + 4GB of memory. If you have more please install the -pae version instead.
        +
        -+Package: xen-utils-4.0
        ++Package: xen-utils-4.1
        +Architecture: i386 amd64
        -+Depends: ${shlibs:Depends}, python, python-xen-4.0, xen-hypervisor-4.0 | xenner, iproute, udev (>= 136-1), libxen4(>= 4.0)
        ++Depends: ${shlibs:Depends}, python, python-xen-4.1, xen-hypervisor-4.1 | xenner, iproute, udev (>= 136-1), libxen4(>= 4.1)
        +Recommends: bridge-utils, libc6-xen
        +Provides: xen-utils
        +Conflicts: xen-utils, xen, libxen-python, libxen2.0, libxen2.0-dev, libxen3-dev, xen-utils-3.0, xen-utils-3.2, xen-utils-3.3
        @@ -1181,7 +1181,7 @@
        + The userspace tools to manage a system virtualized through the XEN virtual
        + machine monitor.
        +
        -+Package: xen-docs-4.0
        ++Package: xen-docs-4.1
        +Architecture: all
        +Replaces: xen-docs-3.0
        +Description: documentation for XEN, a Virtual Machine Monitor
        @@ -1208,7 +1208,7 @@
        + library interface for Xen, a Virtual Machine Monitor. This package
        + provides the libraries for interfacing with the Xen hypervisor.
        +
        -+Package: python-xen-4.0
        ++Package: python-xen-4.1
        +Architecture: amd64 i386
        +Depends: python, python-dev
        +Replaces: xen-utils-3.0, python-xen3.0, python-xen-3.1, python-xen-3.2, python-xen-3.3, python-xen-3.4
        @@ -1217,8 +1217,8 @@
        +Description: python bindings for Xen, a Virtual Machine Monitor
        + python bindings for Xen, a Virtual Machine Monitor. This package
        + provides the python bindings for xen, used for tools such as libvirt.
        —- xen-4.0-4.0.0.orig/debian/rules
        -+++ xen-4.0-4.0.0/debian/rules
        +— xen-4.1-4.1.0.orig/debian/rules
        ++++ xen-4.1-4.1.0/debian/rules
        @@ -0,0 +1,192 @@
        +#!/usr/bin/make -f
        +
        @@ -1412,12 +1412,12 @@
        +
        +binary: binary-indep binary-arch
        +.PHONY: build clean binary-indep binary-arch binary install
        —- xen-4.0-4.0.0.orig/debian/xen-docs-4.0.install
        -+++ xen-4.0-4.0.0/debian/xen-docs-4.0.install
        +— xen-4.1-4.1.0.orig/debian/xen-docs-4.1.install
        ++++ xen-4.1-4.1.0/debian/xen-docs-4.1.install
        @@ -0,0 +1 @@
        +usr/share/doc/xen*
        —- xen-4.0-4.0.0.orig/debian/copyright
        -+++ xen-4.0-4.0.0/debian/copyright
        +— xen-4.1-4.1.0.orig/debian/copyright
        ++++ xen-4.1-4.1.0/debian/copyright
        @@ -0,0 +1,251 @@
        +Xen was initially debianized by Adam Heath
        +
        @@ -1670,8 +1670,8 @@
        +Corporation. Specific attributions are listed in the
        +accompanying credits file.
        +
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/xen-ubuntu-fix-resync.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/xen-ubuntu-fix-resync.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/xen-ubuntu-fix-resync.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/xen-ubuntu-fix-resync.diff
        @@ -0,0 +1,13 @@
        +Index: source/config/StdGNU.mk
        +===================================================================
        @@ -1686,8 +1686,8 @@
        + LIBDIR = $(PREFIX)/$(LIBLEAFDIR)
        + LIBDIR_x86_32 = $(PREFIX)/$(LIBLEAFDIR_x86_32)
        + LIBDIR_x86_64 = $(PREFIX)/$(LIBLEAFDIR_x86_64)
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/fix-pvgrub.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/fix-pvgrub.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/fix-pvgrub.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/fix-pvgrub.diff
        @@ -0,0 +1,13 @@
        +Index: source/stubdom/Makefile
        +===================================================================
        @@ -1702,8 +1702,8 @@
        + CC_FOR_TARGET=”$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(NEWLIB_CFLAGS)” AR_FOR_TARGET=$(AR) LD_FOR_TARGET=$(LD) RANLIB_FOR_TARGET=$(RANLIB) ../newlib-$(NEWLIB_VERSION)/configure –prefix=$(CROSS_PREFIX) –verbose –target=$(GNU_TARGET_ARCH)-xen-elf –enable-newlib-io-long-long –disable-multilib && \
        + $(MAKE) && \
        + DESTDIR= $(MAKE) install )
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/fix-blktap2.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/fix-blktap2.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/fix-blktap2.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/fix-blktap2.diff
        @@ -0,0 +1,13 @@
        +Index: source/tools/blktap2/Makefile
        +===================================================================
        @@ -1718,8 +1718,8 @@
        +
        + SUBDIRS-y :=
        + SUBDIRS-y += include
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/init.d_xen.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/init.d_xen.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/init.d_xen.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/init.d_xen.diff
        @@ -0,0 +1,52 @@
        +Index: source/tools/hotplug/Linux/init.d/xend
        +===================================================================
        @@ -1773,8 +1773,8 @@
        +
        + test -r $XENDOM_CONFIG || { echo “$XENDOM_CONFIG not existing”;
        + if [ “$1” = “stop” ]; then exit 0;
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/series
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/series
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/series
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/series
        @@ -0,0 +1,7 @@
        +fix-blktap2.diff
        +fix-pvgrub.diff
        @@ -1783,8 +1783,8 @@
        +misc-docs.diff
        +use-python-2.6.diff
        +grub2-fix.patch
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/grub2-fix.patch
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/grub2-fix.patch
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/grub2-fix.patch
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/grub2-fix.patch
        @@ -0,0 +1,13 @@
        +Index: source/tools/pygrub/src/GrubConf.py
        +===================================================================
        @@ -1799,8 +1799,8 @@
        + if title_match:
        + if img is not None:
        + raise RuntimeError, “syntax error: cannot nest menuentry (%d %s)” % (len(img),img)
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/use-python-2.6.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/use-python-2.6.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/use-python-2.6.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/use-python-2.6.diff
        @@ -0,0 +1,39 @@
        +Index: source/tools/pygrub/Makefile
        +===================================================================
        @@ -1841,8 +1841,8 @@
        + else
        + .PHONY: all
        + all:
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.0/misc-docs.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.0/misc-docs.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.0/misc-docs.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.0/misc-docs.diff
        @@ -0,0 +1,37 @@
        +Index: source/docs/misc/Makefile
        +===================================================================
        @@ -1881,8 +1881,8 @@
        ++.PHONY: clean
        ++clean:
        ++ rm -f *.pdf *.ps *.dvi *.aux *.log *.out *.toc
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/xen-ubuntu-fix-resync.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/xen-ubuntu-fix-resync.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/xen-ubuntu-fix-resync.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/xen-ubuntu-fix-resync.diff
        @@ -0,0 +1,13 @@
        +Index: source/config/StdGNU.mk
        +===================================================================
        @@ -1897,8 +1897,8 @@
        + LIBDIR = $(PREFIX)/$(LIBLEAFDIR)
        + LIBDIR_x86_32 = $(PREFIX)/$(LIBLEAFDIR_x86_32)
        + LIBDIR_x86_64 = $(PREFIX)/$(LIBLEAFDIR_x86_64)
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/fix-pvgrub.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/fix-pvgrub.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/fix-pvgrub.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/fix-pvgrub.diff
        @@ -0,0 +1,13 @@
        +Index: source/stubdom/Makefile
        +===================================================================
        @@ -1913,8 +1913,8 @@
        + CC_FOR_TARGET=”$(CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) $(NEWLIB_CFLAGS)” AR_FOR_TARGET=$(AR) LD_FOR_TARGET=$(LD) RANLIB_FOR_TARGET=$(RANLIB) ../newlib-$(NEWLIB_VERSION)/configure –prefix=$(CROSS_PREFIX) –verbose –target=$(GNU_TARGET_ARCH)-xen-elf –enable-newlib-io-long-long –disable-multilib && \
        + $(MAKE) && \
        + DESTDIR= $(MAKE) install )
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/fix-blktap2.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/fix-blktap2.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/fix-blktap2.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/fix-blktap2.diff
        @@ -0,0 +1,13 @@
        +Index: source/tools/blktap2/Makefile
        +===================================================================
        @@ -1929,8 +1929,8 @@
        +
        + SUBDIRS-y :=
        + SUBDIRS-y += include
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/init.d_xen.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/init.d_xen.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/init.d_xen.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/init.d_xen.diff
        @@ -0,0 +1,52 @@
        +Index: source/tools/hotplug/Linux/init.d/xend
        +===================================================================
        @@ -1984,8 +1984,8 @@
        +
        + test -r $XENDOM_CONFIG || { echo “$XENDOM_CONFIG not existing”;
        + if [ “$1” = “stop” ]; then exit 0;
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/series
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/series
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/series
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/series
        @@ -0,0 +1,6 @@
        +fix-blktap2.diff
        +fix-pvgrub.diff
        @@ -1993,8 +1993,8 @@
        +xen-ubuntu-fix-resync.diff
        +misc-docs.diff
        +use-python-2.6.diff
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/grub2-fix.patch
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/grub2-fix.patch
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/grub2-fix.patch
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/grub2-fix.patch
        @@ -0,0 +1,13 @@
        +Index: source/tools/pygrub/src/GrubConf.py
        +===================================================================
        @@ -2009,8 +2009,8 @@
        + if title_match:
        + if img is not None:
        + raise RuntimeError, “syntax error: cannot nest menuentry (%d %s)” % (len(img),img)
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/use-python-2.6.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/use-python-2.6.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/use-python-2.6.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/use-python-2.6.diff
        @@ -0,0 +1,39 @@
        +Index: source/tools/pygrub/Makefile
        +===================================================================
        @@ -2051,8 +2051,8 @@
        + else
        + .PHONY: all
        + all:
        —- xen-4.0-4.0.0.orig/debian/patches-4.0.1rc1/misc-docs.diff
        -+++ xen-4.0-4.0.0/debian/patches-4.0.1rc1/misc-docs.diff
        +— xen-4.1-4.1.0.orig/debian/patches-4.1.1rc1/misc-docs.diff
        ++++ xen-4.1-4.1.0/debian/patches-4.1.1rc1/misc-docs.diff
        @@ -0,0 +1,37 @@
        +Index: source/docs/misc/Makefile
        +===================================================================

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s