XAPI on Ubuntu 12.04

Stefan Bader stefan.bader at canonical.com
Thu Jun 9 08:57:35 UTC 2011


Hi Stefano, Mike, Jonathan,

On 08.06.2011 17:36, Stefano Stabellini wrote:
> Hi Stefan, John,
> I would like to ask you a question regarding out of tree kernel modules
> packaging on Ubuntu, I am not sure if you are the right people to ask
> this question, if you are not I would appreciate if you could point me
> in the right direction.
> 
> Let me give you a little bit of background first: I am contacting you on
> behalf of the main developers of XAPI (CC'ed). XAPI is an Open Source
> enterprise management toolstack for Xen, part of the XCP project
> (http://www.xen.org/products/cloudxen.html). They are interested in
> having XAPI packaged on both Debian and Ubuntu, in particular Ubuntu
> 12.04.
> Correct me if I am wrong, but from what I have heard, thanks to the fact
> that dom0 support is upstream in the Linux kernel, there is a good
> possibility that Xen dom0 support will be enabled again in the next
> Ubuntu releases.

Right, will be trying to have it working with 11.10 with blkback now mainline in
3.0 as well.

> Meanwhile the XCP guys are working hard to get XAPI packaged for Debian
> and, if all goes well, XAPI should be in Debian Sid in time for the
> Ubuntu 12.04 freeze.
> As a consequence XAPI should come for free in Ubuntu 12.04 and should
> work out of the box. Users would just need to apt-get install xen and
> apt-get install xapi to have it working.
> 
> However there is an issue left to be solved, and it is the reason I am
> contacting you now.
> In order to have good block performances XAPI relies on an Open Source
> kernel module called "blktap". "blktap" is not currently upstream in the
> Linux kernel and probably won't be in the foreseeable future.
> The XCP guys have plans to move "blktap" completely in userspace,
> removing the need for this module, but probably they won't make it in
> time for Ubuntu 12.04.
> So the question is: would it be possible to get "blktap" packaged in
> Ubuntu 12.04, even if it is not upstream in Linux? I am not familiar
> with your policy regarding kernel modules packaging, but I guess it
> could be packaged in its own separate deb in the "universe" repository?
> If it is possible, what are the steps involved in getting this done?
>
In some cases we added drivers to the main kernel package but this can lead to
drivers getting out of sync with the changes in the kernel or user-space parts
using it. So we rather try to keep those changes at the minimum (like drivers
required for installation).

So IMO, the preferable way would be to make use of DKMS if that works out.
Basically the XAPI source package would create an additional DKMS binary package
that contains the blktap kernel source, which then gets (re-)compiled on
installation and every time a new kernel with a different ABI gets installed.
The advantages I would see from this are:
- the source package has control over migration. So whenever there is a user-
  space solution, the DKMS package could be made obsolete and upgrading the
  user-space side could remove it.
- bug fixes are independent of kernel changes and can easily be synced with
  required user-space changes (if those are needed).
- the DKMS solution can be the same for Debian and Ubuntu. So both benefit.

There are already several packages out there, that use DKMS: like
bcmwl-kernel-source, the nvidia and ati binary drivers, virtualbox-ose-dkms,
open-vm-dkms. Those could server as an example. And there is also

https://wiki.ubuntu.com/Kernel/Dev/DKMSPackaging

which should be of help. At the moment I am looking at fixing up iscsitarget,
which is exactly the case where you got a user-space side and a kernel module.
Unfortunately it is slightly broken right now. But hopefully I have it improved
soon.

Cheers,
Stefan

> Many thanks in advance for any help you can provide.
> Cheers,
> 
> Stefano





More information about the kernel-team mailing list