[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] status of PV drivers in Xen 4.0
On Mon, Apr 12, 2010 at 05:05:37PM +0100, Andrew Lyon wrote: > > > >> The unmodified_drivers build process is designed to work with a > >> separate kernel "objects" folder, so instead of configuring and > >> compiling your kernel in-place you need to do something like this, > >> note that while this step uses a xenified kernel you should not enable > >> Xen in the processor type options, configure the kernel as you would > >> for the hvm guest. > >> > >> cd /usr/src/linux-2.6.31-xen-r14 > >> mkdir ../linux-2.6.31-xen-r14-obj > >> mv .config ../linux-2.6.31-xen-r14-obj/ (or copy in your usual default > >> config file) > >> make mrproper > >> cd ../linux-2.6.31-xen-r14-obj/ > >> make -C /usr/src/linux-2.6.31-xen-r14 menuconfig > >> O=/usr/src/linux-2.6.31-xen-r14-obj/ > >> make -C /usr/src/linux-2.6.31-xen-r14 bzImage (or vmlinuz) modules > >> modules_install O=/usr/src/linux-2.6.31-xen-r14-obj/ > >> > >> Now change to wherever you put the unmodified_drivers/linux-2.6/: > >> > >> export XL=/usr/src/linux-2.6.31-xen-r14 > >> export XEN=/usr/src/linux-2.6.31-xen-r14/include/xen/ > >> > >> Notice how XEN is set to linux/include/xen ? the Xen documentation > >> states that it should be set to a folder containing the Xen sources, > >> I've tried that and it does not work, I think the folder is only used > >> for header files so they could in theory come from Xen or from a > >> Xenified kernel, but on openSUSE the kernel include files are used > >> instead of the Xen ones, and that is the only way that seems to work. > >> > >> ./mkbuildtree > >> Defaulting to this machine's architecture, x86_64, for linking. > >> This may be overridden on the command line (i386,x86_64,ia64). > >> Xen tree: /usr/src/linux-2.6.31-xen-r14/include/xen > >> Linux tree: /usr/src/linux-2.6.31-xen-r14 > >> > >> You can now compile the drivers: > >> > >> make -C /usr/src/linux-2.6.31-xen-r14-obj/ modules M=$PWD > >> > >> If you attempt to do the same process without putting the kernel > >> object files into a separate folder the build will fail, I believe > >> this is because declarations in the kernel override those in the > >> unmodified_drivers. > >> > >> Likewise the process fails if you try to use a generic kernel source > >> tree which has not been patched for Xen dom0, in which case the header > >> files are missing various Xen declarations required for successful > >> compilation. > >> > >> And here is a final proof, Xenified 2.6.31 with all XEN options > >> disabled, with pv-on-hvm drivers: > >> > >> localhost ~ # uname -a > >> Linux localhost 2.6.31-xen-r14 #2 SMP Mon Apr 12 13:34:27 GMT 2010 > >> x86_64 Intel(R) Xeon(R) CPU E5420 @ 2.50GHz GenuineIntel GNU/Linux > >> localhost ~ # zgrep XEN /proc/config.gz > >> # CONFIG_X86_64_XEN is not set > >> localhost ~ # lsmod > >> Module Size Used by > >> xen_vnif 28288 0 > >> xen_balloon 14496 1 xen_vnif > >> xen_vbd 19084 3 > >> xen_platform_pci 78808 3 xen_vnif,xen_balloon,xen_vbd,[permanent] > >> > >> I'm not sure where to go next with this but I hope this info is useful. > >> > > > > Congratulations! > > > > This is valuable information, thanks for going through that. > > > > Can you reproduce this with Xen 4.0.0 ? ie. does opensuse xen have > > some patches related to pv-on-hvm drivers? > > I believe SLES11SP1 will have Xen 4.0 but I have been unable to find > anywhere to download srpms, apparently they are on dvd2 but as it is > still in beta there are no iso images either, however opensuse factory > does have a Xen 4.0 srpm: > > http://download.opensuse.org/factory/repo/src-oss/suse/src/xen-4.0.0_20978_01-1.4.src.rpm > > So the same process could be followed using that, I'm going to give it > a try tomorrow. > Ok. > > > > If there are some patches, those should be upstreamed to Xen. > > Hmm, the patches may simply be there to allow building using the > /usr/src/linux/include/xen headers instead of /usr/src/xen/ , and as > xensource does not have a newer "classic" kernel than 2.6.18 why would > they upsteam them. > Actually there is nowadays.. :) http://xenbits.xen.org/XCP/linux-2.6.27.pq.hg (The kernel tree used by XCP/XenServer/XCI.) -- Pasi _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |