Setup Xen-Unstable Dom0 with 2.6.29-rc5 pv_ops enabled kernel via Git Repository at kernel.org

Due to recent migration Mercurial Repository for XenParavirtOps
to Git Repository at kernel.org. Procedure of obtaining source code
from from the Net has been changed. Base platform to start the test was Ubuntu Intrepid Server (64-bit) with Ubuntu Desktop installed via tasksel. Packages required by installation procedure : openssl,x11(xorg-dev),gettext,python-devel,gitk,git-core,bcc,lbc-386-dev.

# cd /usr/src
# hg clone http://xenbits.xensource.com/xen-unstable.hg
# cd xen-unstable.hg
# make xen
# make install-xen
# make tools
# make install-tools

Install packages

# apt-get install build-essential libncurses5-dev gawk mercurial

**********************************************
Building kernel via git repos at kernel.org:-
**********************************************

root@ServerXen331:/usr/src# mkdir linux.trees.git || exit -1

root@ServerXen331:/usr/src# cd linux.trees.git

root@ServerXen331:/usr/src/linux.trees.git# git init
Initialized empty Git repository in /usr/src/linux.trees.git/.git/

root@ServerXen331:/usr/src/linux.trees.git# git remote add \
linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

root@ServerXen331:/usr/src/linux.trees.git# git remote add \
tip git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git

root@ServerXen331:/usr/src/linux.trees.git# git remote update
Updating linus
warning: no common commits
remote: Counting objects: 1068144, done.
remote: Compressing objects: 100% (178196/178196), done.
remote: Total 1068144 (delta 890175), reused 1062206 (delta 885050)
Receiving objects: 100% (1068144/1068144), 258.76 MiB | 26 KiB/s, done.
Resolving deltas: 100% (890175/890175), done.
. . . . . . . . . .
Updating tip
remote: Counting objects: 19569, done.
remote: Compressing objects: 100% (7482/7482), done.
remote: Total 18172 (delta 14981), reused 12843 (delta 10122)
Receiving objects: 100% (18172/18172), 3.54 MiB | 107 KiB/s, done.
Resolving deltas: 100% (14981/14981), completed with 1157 local objects.
From git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen
* [new branch] acpi/map -> tip/acpi/map
* [new branch] mainline/mm -> tip/mainline/mm
* [new branch] mainline/net -> tip/mainline/net
* [new branch] master -> tip/master
* [new branch] push/xen/dom0/core -> tip/push/xen/dom0/core
* [new branch] tip/fixups -> tip/tip/fixups
* [new branch] x86/apic -> tip/x86/apic
* [new branch] x86/cpa -> tip/x86/cpa
* [new branch] x86/unify -> tip/x86/unify
* [new branch] x86/unify-base -> tip/x86/unify-base
* [new branch] x86/unify-irq -> tip/x86/unify-irq
* [new branch] x86/unify-irq-base -> tip/x86/unify-irq-base
* [new branch] x86/unify-kmemcheck -> tip/x86/unify-kmemcheck
* [new branch] x86/unify-kmemcheck-base -> tip/x86/unify-kmemcheck-base
* [new branch] x86/untangle -> tip/x86/untangle
* [new branch] x86/untangle2 -> tip/x86/untangle2
* [new branch] xen/core -> tip/xen/core
* [new branch] xen/dev-evtchn -> tip/xen/dev-evtchn
* [new branch] xen/dom0/apic -> tip/xen/dom0/apic
* [new branch] xen/dom0/backend/blkback -> tip/xen/dom0/backend/blkback
* [new branch] xen/dom0/backend/core -> tip/xen/dom0/backend/core
* [new branch] xen/dom0/backend/netback -> tip/xen/dom0/backend/netback
* [new branch] xen/dom0/core -> tip/xen/dom0/core
* [new branch] xen/dom0/hackery -> tip/xen/dom0/hackery
* [new branch] xen/dom0/mtrr -> tip/xen/dom0/mtrr
* [new branch] xen/dom0/pci -> tip/xen/dom0/pci
* [new branch] xen/dom0/swiotlb -> tip/xen/dom0/swiotlb
* [new branch] xen/dom0/xenfs -> tip/xen/dom0/xenfs
* [new branch] xen/frontend/blkfront -> tip/xen/frontend/blkfront
* [new branch] xen/fs -> tip/xen/fs
* [new branch] xen/hg-queue-import -> tip/xen/hg-queue-import
* [new branch] xen/irq -> tip/xen/irq
* [new branch] xen/master -> tip/xen/master
* [new branch] xen/pvhvm -> tip/xen/pvhvm
* [new branch] xen/xenbus -> tip/xen/xenbus
. . . . . .
root@ServerXen331:/usr/src/linux.trees.git# git checkout \
-b xen-latest tip/xen/dom0/hackery
warning: You appear to be on a branch yet to be born.
warning: Forcing checkout of tip/master.
Checking out files: 100% (26687/26687), done.
Branch tip-latest set up to track remote branch refs/remotes/tip/master.
Switched to a new branch “xen-latest”
make menuconfig # Activate Xen Dom0 support
make
make modules_install install
depmod 2.6.29-rc5-tip
mkinitramfs -o /boot/initrd-2.6.29-rc5-tip.img 2.6.29-rc5-tip
*********************
Create grub entry :-
*********************
title Xen 3.4 / Ubuntu 8.10, kernel 2.6.29-tip
uuid c841c5e9-8eb2-4e47-b36e-6796e5ce6ce6
kernel /boot/xen-3.4.gz dom0_mem=1024M
module /boot/vmlinuz-2.6.29-rc5-tip root=/dev/sdb1 ro console=tty0 pci=nomsi
module /boot/initrd-2.6.29-rc5-tip.img

Reboot system into Xen Unstable Dom0
Remote connect via VNC to Dom0



SNV_106 PV DomU test installation:-










My thanks to Ian Campbell and Michael Young for pointing me to right branch for checkout in new git repository

2 Responses to Setup Xen-Unstable Dom0 with 2.6.29-rc5 pv_ops enabled kernel via Git Repository at kernel.org

  1. This didn’t work for me; I am running this on a hosted server without out-of-band KVM, so fortunately I used the ‘fallback’ option in grub before I tried it! Apparently the Xen option doesn’t boot successfully because it falls back to my Intrepid kernel. I’m using the exact same base system (Intrepid) as you are, on an x86_64 installation. Is there any way I can capture debug information from the early life of the Nemesis microkernel, or the Linux dom0? Nothing spits out a /var/log/dmesg* that might indicate the dom0 was able to do anything. And it either panics or errors out at grub, because the failover option punts to 2.6.27-12-server.

  2. Nicky says:

    Just dropping by.Btw, you website have great content!

    ______________________________
    Why this one-minute therapy is being suppressed in the U.S. while more than 15,000 European doctors have been using it to heal millions of patients

Leave a comment