FreeBSD/Xen port

This wiki page documents the state of FreeBSD on Xen. Below are reported the several configurations on which FreeBSD can run as a Xen guest.

There are several kind of guests supported on Xen:

See The Virtualization Spectrum for more information about the different kind of guests Xen supports.

Xen kernel configurations

32-bit Intel/AMD (i386)

Kernel config

FreeBSD 8.x

FreeBSD 9.x

FreeBSD 10.x

XEN

Full PV

Full PV

Deprecated

XENHVM

HVM with PV drivers

HVM with PV drivers

Removed

GENERIC

No Xen support

No Xen support

PVHVM

64-bit Intel/AMD (amd64)

Kernel config

FreeBSD 8.x

FreeBSD 9.x

FreeBSD 10.x

XENHVM

HVM with PV drivers

HVM with PV drivers

Removed

GENERIC

No Xen support

No Xen support

PVHVM

Notes on kernel options

Starting from FreeBSD 10 the GENERIC kernel configuration on both i386 and amd64 contains full Xen PVHVM support, so there's no need to compile a specific kernel in order to get Xen drivers. Previous versions of FreeBSD (8.x and 9.x) required the user to compile a custom (XENHVM) kernel in order to make use of the PV optimizations when running inside of a HVM container.

Amazon EC2

TODO: Ask Colin Percival about the current status.

HEAD status and work items

FreeBSD/Xen development is happening in HEAD, with the following on-going items:

FreeBSD PVH DomU support

Xen 4.4 introduced a new kind of guest, dubbed PVH in Xen nomenclature. This is very similar to PVHVM, but it doesn't require a Qemu instance and doesn't make use of any kind of emulated devices.

Support for this new guest mode is being added to FreeBSD, more information about the status of this project can be found on the FreeBSD PVH wiki page.

FreeBSD PVH Dom0 support

Since the new PVH mode doesn't require any kind of emulation, it can also be used as Dom0. Xen 4.5 is expected to be the first release with PVH Dom0 support. FreeBSD developers are currently working on getting FreeBSD PVH Dom0 support, the status of this work item is tied to the upstreaming efforts of PVH Dom0 in Xen itself. If interested in testing/contributing please contact royger@.

Setup

FreeBSD still cannot run as a Dom0 host, which means you need to setup with a different Dom0-capable operating system. A list of Dom0 kernels is available here:

http://wiki.xen.org/wiki/Dom0_Kernels_for_Xen

Once you have selected your system of preference for running a Dom0 host instance, some work is needed in order to get it ready. First of all you may need to install the Host system. You can find instructions about how to setup, officially supported, host systems here (please refer to each project page):

http://wiki.xen.org/wiki/Category:Host_Install

After that, some configuration tips are necessary. Please follow advices reported here:

http://wiki.xen.org/wiki/Category:Host_Configuration

At this point your guest FreeBSD can be booted in the selected configuration.

Support

Several companies and individuals have worked to FreeBSD/Xen support so far.

For questions/assistance please use the FreeBSD-Xen mailing list:

http://lists.freebsd.org/mailman/listinfo/freebsd-xen

Additionally, you can Cc the appropiate Xen upstream mailing lists:

xen-devel AT xen DOT xenproject DOT org

xen-users AT xen DOT xenproject DOT org

Or the following individuals can be separately contacted. Keep in mind that this should only be used as a last resort, the standard way of getting help is through the mailing list:

Will Andrews - will AT FreeBSD DOT org

Sean Bruno - sbruno AT FreeBSD DOT org

Justin T. Gibbs - gibbs AT FreeBSD DOT org

Bret Ketchum - Bret_Ketchum AT dell DOT com

Kenneth D. Merry - ken AT FreeBSD DOT org

Kip Macy - kmacy AT FreeBSD DOT org

Cherry G. Mathew - cherry AT FreeBSD DOT org

Roger Pau Monné - royger AT FreeBSD DOT org

Colin Percival - cperciva AT FreeBSD DOT org

Attilio Rao - attilio AT FreeBSD DOT org

Old FreeBSD/Xen port wiki page

You can refer to the following page for the old project effort:

http://wiki.freebsd.org/FreeBSD/Xen

http://wiki.freebsd.org/FreeBSD/XenOld

FreeBSD/XenNG (last edited 2014-03-31 16:15:28 by RogerPau)