Setup Xen 3.4.1-rc3 Dom0 with 2.6.30-rc(X)-tip pvops enabled kernel on top Ubuntu Intrepid Server (64 bit)

Recently Jeremy Fitzhardinge wrote to xen-devel mailing list:- The new branch structure is similar to the old one in overall layout. There are two “merged” branches:
* xen-tip/master – will try to keep as a known-working branch, with only tested changes
* xen-tip/next – current bleeding edge; should at least compile


To checkout master branch:-
# git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
# cd linux-2.6-xen
# git checkout origin/xen-tip/master -b xen-tip/master

To checkout the most recent branch:-
# git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
# cd linux-2.6-xen
# git checkout origin/xen-tip/next -b xen-tip/next


Posting bellow describes building Xen Unstable Dom0 with 2.6.30-rc6-tip pvops enabled kernel on top Ubuntu Intrepid Server (64-bit) with VNC [1] setup for remote access via Gnome Desktop to Dom0. Fedora 10,CentOS 5.2, Solaris Nevada (b106), opensolaris 2008.11 PV DomUs have been successfully tested to run VNC sessions initiated via gnome terminal running at remote Dom0 desktop. PV_OPS enabled kernel is based on checkout branch mentioned above.

View also: Setup Xen 3.4.1 Dom0 on top of Ubuntu 9.04 Server

Packages required by installation procedure : openssl-dev,x11(xorg-dev),gettext,python-devel,gitk,git-core,bcc,lbc-386-dev.

# cd /usr/src
# hg clone http://xenbits.xensource.com/xen-3.4-testing.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

To setup Xen Dom0 support run :-
# make menuconfig







Make sure XEN_BLKDEV_FRONTEND=y



Otherwise, kernel build fails at least through my experience

Then :-

# make
# make modules_install install
# depmod 2.6.30-rc6-tip
# mkinitramfs -o /boot/initrd-2.6.30-rc6-tip.img 2.6.30-rc6-tip

Add to /etc/fstab :-

none /proc/xen xenfs defaults 0 0

Boot with grub entry :-

title Xen 3.4 / Ubuntu 8.10, kernel 2.6.30-rc6-tip
uuid 9efba9a5-9f2b-4bf6-b8b5-7d6d53eb02d9
kernel /boot/xen-3.5.gz
module /boot/vmlinuz-2.6.30-rc6-tip root=/dev/sdb14 ro console=tty0
module /boot/initrd-2.6.30-rc6-tip.img

All PV DomUs have been installed via schema based on two
pygrub profiles. Details may be viewed here: Xen 3.3.1rc1-pre port to CentOS 5.2 via http://bits.xensource.com mercurial repos and managing PV DomUs in graphical mode. Performance of 2.6.29-tip
pvops enabled kernel seems to be pretty good vs Xen 3.3.1
port to CentOS 5.2 running on the same Q9550,ASUS P5Q-E,8 GB RAM box (multibooting several Xen hosts for performance
comparision ).

F10 PV DomUs snapshots:-







CentOS 5.2 PV DomUs snapshots:-







Solaris Nevada (b106) PV DomUs snapshots:-





*******************************************
How to setup VNC at Xen Unstable Dom0
*******************************************
I presume that Ubuntu Desktop had been installed via tasksel utility at the very beginning. It is about 600 MB download automatically followed by package installation phase. Booting into Xen Unstable Dom0 with 2.6.29-tip pvops kernel will bring you into text mode environment, where following bellow actions should be undertaken.

# apt-get install vim vnc4server xinetd
# vi /etc/gdm/gdm.conf

Uncomment this line

RemoteGreeter=/usr/lib/gdm/gdmlogin

Enable xdmcp, look for [xdmcp] and change Enable to true.

[xdmcp]
Enable=true

***************
Restart gdm
***************

# /etc/init.d/gdm restart

Setup xinetd
*************************************
Create a new service file for xinetd
*************************************

# vi /etc/xinetd.d/Xvnc
service Xvnc
{
type = UNLISTED
disable = no
socket_type = stream
protocol = tcp
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -geometry 1024×768 -depth 16 -cc 3 -once -SecurityTypes=none -extension XFIXES
port = 5901
}

*****************
Restart xinetd
*****************

# /etc/init.d/xinetd restart

Perform graphical login via “vncviewer IP-Intrepid-Server:5901” from remote host and open terminal session to run gconf-editor . Goto gnome_settings_daemon->plugins and disable mouse and keyboard plugins and relogin again. That’s a known workaround for the issue with VNC on Ubuntu 8.04,8.10



********************
Update on 04/08/09
********************
I strongly believe that sooner or later pvops support in Dom0
will merge mainline Linux and it is supposed to happen due to in a foreseeable future KVM won’t demonstrate performance close to Xen Paravirtual Guests.

References
1.Attempt of VNC setup on Ubuntu Hardy PV DomU at Xen 3.3 CentOS 5.2 Dom0 (all 64-bit)

13 Responses to Setup Xen 3.4.1-rc3 Dom0 with 2.6.30-rc(X)-tip pvops enabled kernel on top Ubuntu Intrepid Server (64 bit)

  1. Léonard says:

    Hi, maybe you should specify that you need to add the line :
    “xenfs /proc/xen xenfs defaults 0 0” to your /etc/fstab to be able to start xend.
    At least, I had to.
    Thank you for your helping post

  2. dbaxps says:

    Yes, you are right. I forgot. This information is also
    on WIKI page :-
    http://wiki.xensource.com/xenwiki/XenParavirtOps

  3. Gele says:

    Didn`t work for me.
    git checkout origin/push2/xen-tip/dom0/master -b push2/xen-tip/dom0/master
    returned w error:
    # Did you intend to checkout ‘origin/push2/xen-tip/dom0/master’ which can not be resolved as commit?
    #

  4. dbaxps says:

    Please, read :-
    ************************
    Update on 04/23/2009
    ************************
    Checkout master branch:-
    # git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
    # cd linux-2.6-xen
    # git checkout origin/xen-tip/master -b xen-tip/master
    Checkout the most recent branch:-
    # git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
    # cd linux-2.6-xen
    # git checkout origin/xen-tip/next -b xen-tip/next

  5. Gele says:

    Thank you! It`s o.k now. Actually compilation worked even with the error from my previous post. I`ve switched to the most recent branch (had problems with usb, amd-powerNow!,xend, and single CPU config.). Now i`m waiting the rc6 to compile.

  6. dbaxps says:

    I have updated post for the most recent 2.6.30-rc6-tip
    pvops kernel and Xen 3.4.1-rc3 . Screen shots had been made right before 2.6.30 merge window for kernel 2.6.29-tip. So, they are
    not up to date.

  7. I feel like an idiot, but doing a make menuconfig does not seem to allow me to enable paravirtualized support. It’s simply disabled (no option to toggle it to Y/N). Any ideas?

    It’s nice to see how XenSource destroyed Xen in a couple of years such as no stable dom0 support exists now (like two years ago). I feel like I went back in time 🙂

  8. A “make allyesconfig” seems to do it.

  9. dbaxps says:

    I need e-mail to send you snapshots.
    Editing .config doesn’t seem a good option.

  10. mija says:

    At first, thanks for this nice guide. I’m now trying to use it but got some problems.

    I can’t find how to enable the PCI_PASSTHROUGH in the kernel, ist this not supportetd yet?

    Shoudn’t I complie and boot the new kernel before compiling the xen?

    thx a lot

  11. dbaxps says:

    >I can’t find how to enable the PCI_PASSTHROUGH in the >kernel, ist this not supportetd yet?
    I am not sure pvops kernel supports PCI_PASSTHROUGH.
    Please , post your question to xen-devel mailing list.
    >Shoudn’t I complie and boot the new kernel before
    > compiling the xen?

    You can configure pvops kernel without Xen Dom0 Support
    and load as vanilla kernel. As far as you enable Xen Dom0
    Support it’s supposed to be loaded after xen-3.4.gz as a module.

  12. mija says:

    Thx. I did boot the new kernel and recompile XEN there because of missing support for PCI_PASTHROUGH. Now it did compile without complaining…

    One small detail. In my /boot is no xen-3.5.gz
    so I changed the grub list to kernel /boot/xen-3.4.gz

  13. dbaxps says:

    Last night i’ve cloned and built Xen 3.5 Unstable on Ubuntu 9.04 Server with no problems. It’s just a matter of preference.

Leave a comment