WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] Howto use 2.6.18.hg repo ?

To: xen-users@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-users] Howto use 2.6.18.hg repo ?
From: Mark Williamson <mark.williamson@xxxxxxxxxxxx>
Date: Fri, 14 Dec 2007 04:40:00 +0000
Cc: Marc Disco <discomarc@xxxxxxxxx>
Delivery-date: Thu, 13 Dec 2007 20:40:34 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <aa164a700712091016t41b551ebh357e294a34b66bf7@xxxxxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <aa164a700712091016t41b551ebh357e294a34b66bf7@xxxxxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.9.6 (enterprise 0.20070907.709405)
> I'm writing to you because i'm a little bit 'confused' on how things work
> out regarding xen source.
> What's the point of having a separate repo for the modified 2.6.18 kernel
> since it's not possible (or at least for me, the non-kernel-hacker) to
> compile
> it outside the xen source tree ?

The Linux kernel code has been (for at least the past couple of releases) 
independent in terms of ABI of the Xen version that it is used with for both 
dom0 and domU.  So you should be able to build the XenLinux kernel from the 
XenLinux repository entirely separately and use it with a recent Xen release.  
If this doesn't work then it'd be a bug and need fixing.

In the 3.1 series, we shipped the modifications to Linux as a "sparse tree" - 
a Linux-style directory structure containing only the files that Xen added or 
modified.  This had to be overlaid as part of the build process onto a real 
Linux tree, which is why you will see the Xen kernel build downloading a 
Linux tarball.

Under Xen unstable, there's the Xen repository *and* the Linux repository and 
they're separate things.  The hypervisor and the tools are developed in the 
Xen repo; XenLinux development happens in the Linux repository you found.

> Here's my experience :
>
> cd /usr/usrc ; hg clone http://xenbits.xensource.com/xen-3.1-testing.hg  ;
> cd xen-3.1-testing.hg
> make -j2 linux-2.6-xen0-config CONFIGMODE=menuconfig
> exited without saving config.
> hg clone http://xenbits.xensource.com/linux-2.6.18-xen.hg ; cd
> linux-2.6.18-xen.hg ; make mrproper ; cd ..
> mv linux-2.6.18 old_linux-2.6.18
> mv linux-2.6.18-xen.hg linux-2.6.18
> make -j2 linux-2.6-xen0-config CONFIGMODE=menuconfig
> make -j2 linux-2.6-xen0-build
> make -j2 linux-2.6-xen0-install

The "conventional" way to use the 3.1 repositories would be to just use the 
XenLinux that's constructed automatically from the sparse tree and not clone 
or build the separate Linux tree at all.

If you want security / bug fixes or new features that are only in the separate 
Linux repository then you can build that independently of Xen and use that.

Note that the separate Linux repository has not actually been part of 
an "official" release, so technically I guess it's still beta-quality code.  
It'll be part of the 3.2 release, which should be soon.

Arguably the best way of keeping up to date with features and security fixes 
is to use a kernel from an upstream Linux vendor with good Xen support, then 
they can take care of all that for you.

> Finaly i'm getting a vmlinuz-2.6.18.8 in root / which i move back to /boot/
> and add corresponding lines
> to grub's menu.lst

Well, you're going about things in a slightly strange way, although I see what 
you're trying to do.  However, if I were you, for simplicity, I'd either just 
use the 3.1-testing XenLinux build process (not hg clone XenLinux in the 
first place), *or* just build the separate XenLinux repository in a different 
directory entirely.  It won't be integrated with the build of the hypervisor 
then but it does make it clearer what's going on and reduces the chances for 
confusion.

As it is I guess what you are doing may work for you, but it makes my head 
hurt a bit!  (no disrespect intended)

The final alternative would be to use 3.2 (developing in xen-unstable at the 
moment), which already should have support for cloning the separate XenLinux 
repository and using it automatically.

> Is it the 'right' way to do ? I must admit that i'm not a kernel-guru, just
> want to make sure i'm not doing something wrong
>
> Thank you for your help, i'd appreciate.

Build systems are always scary and confusing.  I personally don't understand 
much of *how* the Xen build system does stuff, I usually just concentrate on 
the fact that it does and cross my fingers ;-)

Hope the information I've given helps you out.

Cheers,
Mark

-- 
Dave: Just a question. What use is a unicyle with no seat?  And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

<Prev in Thread] Current Thread [Next in Thread>