Author Archives: Ian Campbell

About Ian Campbell

Ian Campbell has been involved with the Xen project since joining XenSource in 2005. Today he is a Principal Software Engineer at Citrix Systems, Inc ( working on Xen where his interests include Xen on ARM, Linux on Xen, paravirtualised networking and toolstack issues. Prior to Citrix (and XenSource) he worked on embedded Linux systems at Arcom Control Systems. Ian is a committer, Linux maintainer (Xen network backend driver) and Debian Developer. Also check out Ian's personal blog.

Xen on ARM with virtualisation extensions progress.

There’s been a lot of good progress in the Xen on ARM with virtualisation extensions port since I first blogged about it here.

Thanks to some recent work, mainly by Stefano Stabellini, we are now able to start our first guest domain, including paravirtual console disk and network devices!

The main implementation work here has been to implement support for the core pieces of infrastructure will underpins the PV drivers, primarily that is event channels and grant tables all of which Stefano has implemented recently. One of our key design goals with this port of Xen was to make good use of the hardware virtualisation extensions, and at the same time implement paravirtualisation where it offers obvious benefits. For example we wanted to use paravirtualised device drivers for I/O as they provide significant performance benefits compared to emulated devices.

Sadly this has come too late for the 4.2 release (which has been frozen for a while and is now in the release candidate stage). Therefore I have created a git branch of Xen to track the ARM patches which are destined for 4.3. You can find it on xenbits and read more in the announcement mail.

Continue reading

Xen 4.2 Release Plan Update: Xen 4.2.0-rc1 released

Last week we finally crossed the last major remaining issues off the Xen 4.2 TODO list. This means that the release plan now looks like this:

  • 19 March — TODO list locked down
  • 2 April — Feature Freeze
  • 30 July — First release candidate WE ARE HERE
  • Weekly — RCN+1 until release

That’s right, we’ve now released Xen 4.2.0-rc1!

There’s still a couple of smaller outstanding items which we hope to resolve shortly plus a short list of known bugs. See this weeks TODO list / Release Plan posting for some details. The release notes for Xen 4.2 are still a work in progress but can be found on the wiki.

I’d like to encourage everyone to start testing now. You can get RC1 from the Xen unstable mercurial tree (in the short term the actual 4.2.0-rc1 tag will be in the staging tree until testing passes). Please report any issues which you find to the xen-devel mailing list.

In particular I would encourage everyone to test the new xl toolstack with their use cases. In Xen 4.2.0 the venerable xend toolstack will be deprecated and everyone will be encouraged everyone to move over to xl whenever possible. xl is in good shape already, has good support for the core features and is quite robust etc. However one of the factors of xend unmaintainability is that no one is quite sure what all of its features actually are! So if you suspect you are using functionality which is a bit unusual or less common then please do give xl a try and report your findings to the xen-devel mailing list so that we can attempt to resolve these issues before the 4.2.0 release.

Debconf12, Managua, Nicaragua

All of this week Ian Jackson and myself have been have been attending DebConf12 in Managua, Nicaragua. This is the annual conference of the Debian Project, hosted this year by Universidad Centroamericana.

There have already been several days of talks, including the traditional “Bits from… ” talks from the release teams, project leader, DSA team etc and interesting talks on UEFI, ARM, multiarch and cross building. In particular it was very interesting from my point of view (due to my involvement with the new Xen port to ARMv7 with hardware extensions) to see the talk on the new “aarch64” 64 bit ARM architecture. Not to mention the traditional Cheese & Wine party and the day trip. Sadly our attempt to climb Cerro Negro, the youngest volcano in Central America, was scuppered by a landslide on the road leading to the foot of the volcano.

Debian for the Cloud Track

As I write this I have just finished my Debian & Xen: Past Present and Future talk as part of the Debian for the Cloud Track. Also on this track there have been or will be talks on XCP, Ganeti, advanced Linux networking and a discussion of upstream compatiblity concerns.

All the DebConf talks are being streamed live from the venue but if you’ve missed one then they will eventually be made available for offline viewing.


As always there has been a hacklab. When I’ve not been listening to talks I’ve been doing some triage of the Xen bugs in the Debian BTS. There was quite a large number of bugs which had either already been fixed or which had become somehow irrelevant.

Unrelated to Xen I’ve also managed while I was here to implement support for the DreamPlug plug computer in the Debian Installer.

Impressions of Nicaragua

In my experience Nicaragua is an excellent place to visit, I wish I’d thought to extend my stay a bit so I could see more. Everyone I’ve met here is extremely welcoming and friendly. It’s also not nearly as hot I was expecting, although don’t get me wrong — it’s really very hot indeed. It hasn’t rained as much as I might have expected at this time of year, but when it has rained it really has taken no prisoners. Security Policy Update: Get Involved recently released a number of (related) security updates, XSA-7 through to -9. This was done by the Security Team who are charged with following the Security Problem Response Process.

As part of the process of releasing XSA-7..9 several short-comings (a few of which Ian Jackson has discussed already in Security vulnerabilities – the coordinated disclosure sausage mill) were found in the process.

In order to address these short-comings we have started a discussion on the xen-devel mailing list which describes the issues which we faced and proposes some potential options for updates. However this process is supposed to serve you, the Xen user community, and therefore your feedback and input is critical to ensuring that the policy meets the needs of the community.

So whether you are a small or large consumer of Xen you should feel free to have your say and to help formulate an updated policy which best serves the needs of the community. To take part in the discussion please send mail to

Xen 4.2 Release Plan Update

It’s been a while since the last 4.2 release update and a lot has
changed since then, so I suppose it is time for another update.

Way back at the start of April I posted the previous
which suggested we’d be doing the first release candidates
in mid/late April. Well, as might be expected, that turned out to be
rather optimistic!

Rather than get caught out again I’ve gone for a much more standard OSS
project release time line:

  • 19 March — TODO list locked down
  • 2 April — Feature Freeze
  • When It’s Ready — First release candidate
  • Weekly — RCN+1 until release

The good news is that since the previous update lots of progress has
been made and the list of blockers to release has been getting
smaller. There remains three largish items and a handful of smaller
ones. Almost all of which have seen multiple rounds of review and are
nearing fruition. (NB: items marked [BUG] or [CHECK] are not
considered blockers for RC0)

The list of outstanding issues is posted to xen-devel on a weekly basis, usually on a
Monday. The most recent posting is here.

Xen 4.2 Release Plan Update

We have hit the next milestone in the release plan for Xen 4.2:

  • 19 March — TODO list locked down
  • 2 April — Feature Freeze WE ARE HERE
  • Mid/Late April — First release candidate
  • Weekly — RCN+1 until it is ready

We are therefore now in Feature Freeze for Xen 4.3! Patches which have been posted before or which address something on the TODO list are still acceptable (for now, we will gradually be getting stricter about this), everything else will be deferred until 4.3 by default.