svn commit: r216545 - stable/8/share/man/man4

Robert Watson rwatson at FreeBSD.org
Sat Dec 18 23:03:02 UTC 2010


Author: rwatson
Date: Sat Dec 18 23:03:01 2010
New Revision: 216545
URL: http://svn.freebsd.org/changeset/base/216545

Log:
  Merge xen.4 man page from head to stable/8; revs r216419, r216420, r216428,
  r216429, r216497, r216500, r216501, r216509.
  
  Approved by:	re (kib)
  Sponsored by:	DARPA, AFRL

Added:
  stable/8/share/man/man4/xen.4
     - copied, changed from r216420, head/share/man/man4/xen.4
Modified:
  stable/8/share/man/man4/Makefile
Directory Properties:
  stable/8/share/man/man4/   (props changed)

Modified: stable/8/share/man/man4/Makefile
==============================================================================
--- stable/8/share/man/man4/Makefile	Sat Dec 18 22:16:15 2010	(r216544)
+++ stable/8/share/man/man4/Makefile	Sat Dec 18 23:03:01 2010	(r216545)
@@ -485,6 +485,7 @@ MAN=	aac.4 \
 	wlan_xauth.4 \
 	${_wpi.4} \
 	xe.4 \
+	${_xen.4} \
 	xl.4 \
 	xpt.4 \
 	zero.4 \
@@ -671,6 +672,7 @@ _spkr.4=	spkr.4
 _tpm.4=		tpm.4
 _urtw.4=	urtw.4
 _wpi.4=		wpi.4
+_xen.4=		xen.4
 
 MLINKS+=lindev.4 full.4
 .endif

Copied and modified: stable/8/share/man/man4/xen.4 (from r216420, head/share/man/man4/xen.4)
==============================================================================
--- head/share/man/man4/xen.4	Mon Dec 13 23:30:56 2010	(r216420, copy source)
+++ stable/8/share/man/man4/xen.4	Sat Dec 18 23:03:01 2010	(r216545)
@@ -28,29 +28,26 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd December 13, 2010
+.Dd December 17, 2010
 .Dt XEN 4
 .Os
 .Sh NAME
 .Nm xen 
 .Nd Xen Hypervisor Guest (DomU) Support
 .Sh SYNOPSIS
-To compile para-virtualized (PV) Xen guest support into the i386 kernel, place
-the following line in your kernel configuration file:
+To compile para-virtualized (PV) Xen guest support into an i386 kernel, place
+the following lines in your kernel configuration file:
 .Bd -ragged -offset indent
 .Cd "options PAE"
 .Cd "options XEN"
+.Cd "nooptions NATIVE"
 .Ed
 .Pp
-To compile hardware-assisted virtualization (HVM) Xen guest support into the
-amd64 kernel, place the following line in your kernel configuration file:
+To compile hardware-assisted virtualization (HVM) Xen guest support with
+para-virtualized drivers into an amd64 kernel, place the following lines in
+your kernel configuration file:
 .Bd -ragged -offset indent
 .Cd "options XENHVM"
-.Ed
-.Pp
-To compile the Xen PCI bus and para-virtualized (PV) drivers into an amd64
-or i386 kernel, place the following line in your kernel configuration file:
-.Bd -ragged -offset indent
 .Cd "device xenpci"
 .Ed
 .Sh DESCRIPTION
@@ -58,27 +55,99 @@ The Xen Hypervisor allows multiple virtu
 computer system.
 When first released, Xen required that i386 kernels be compiled
 "para-virtualized" as the x86 instruction set was not fully virtualizable.
+Primarily, para-virtualization modifies the virtual memory system to use
+hypervisor calls (hypercalls) rather than direct hardware instructions to
+modify the TLB, although para-virtualized device drivers were also required
+to access resources such as virtual network interfaces and disk devices.
+.Pp
 With later instruction set extensions from AMD and Intel to support fully
-virtualizable instructions, unmodified kernels could also be supported,
-referred to as hardware-assisted virtualization (HVM).
-HVM systems may still use para-virtualized drivers, which are aware of
-virtualization and able to optimize certain behaviours to improve
-performance or semantics.
+virtualizable instructions, unmodified virtual memory systems can also be
+supported; this is referred to as hardware-assisted virtualization (HVM).
+HVM configurations may either rely on transparently emulated hardware
+peripherals, or para-virtualized drivers, which are aware of virtualization,
+and hence able to optimize certain behaviors to improve performance or
+semantics.
 .Pp
 .Fx
 supports a fully para-virtualized (PV) kernel on the i386 architecture using
-.Cd "options XEN" ;
+.Cd "options XEN"
+and
+.Cd "nooptions NATIVE" ;
 currently, this requires use of a PAE kernel, enabled via
 .Cd "options PAE" .
+.Pp
 .Fx
-supports hardware-assited virtualization (HVM) on both the i386 and amd64
+supports hardware-assisted virtualization (HVM) on both the i386 and amd64
 kernels; however, PV device drivers with an HVM kernel are only supported on
-the amd64 architecture.
+the amd64 architecture, and require
+.Cd "options XENHVM"
+and
+.Cd "device xenpci" .
 .Pp
 Para-virtualized device drivers are required in order to support certain
-functionality, such as the dynamic addition of new virtual devices, and the
-"balloon driver" (returning physical memory to the Hypervisor on demand),
-and VM suspend/resume.
+functionality, such as processing management requests, returning idle
+physical memory pages to the hypervisor, etc.
+.Ss Xen DomU device drivers
+Xen para-virtualized drivers are automatically added to the kernel if a PV
+kernel is compiled using
+.Cd "options XEN" ;
+for HVM environments,
+.Cd "options XENHVM"
+and
+.Cd "device xenpci"
+are required.
+The follow drivers are supported:
+.Bl -hang -offset indent -width blkfront
+.It Nm balloon
+Allow physical memory pages to be returned to the hypervisor as a result of
+manual tuning or automatic policy.
+.It Nm blkback
+Exports local block devices or files to other Xen domains where they can
+then be imported via
+.Nm blkfront .
+.It Nm blkfront
+Import block devices from other Xen domains as local block devices, to be
+used for file systems, swap, etc.
+.It Nm console
+Export the low-level system console via the Xen console service.
+.It Nm control
+Process management operations from Domain 0, including power off, reboot,
+suspend, crash, and halt requests.
+.It Nm evtchn
+Expose Xen events via the
+.Pa /dev/xen/evtchn
+special device.
+.It Nm netback
+Export local network interfaces to other Xen domains where they can be
+imported via
+.Nm netfront .
+.It Nm netfront
+Import network interfaces from other Xen domains as local network interfaces,
+which may be used for IPv4, IPv6, etc.
+.It Nm pcifront
+Allow physical PCI devices to be passed through into a PV domain.
+.It Nm xenpci
+Represents the Xen PCI device, an emulated PCI device that is exposed to
+HVM domains.
+This device allows detection of the Xen hypervisor, and provides interrupt
+and shared memory services required to interact with the hypervisor.
+.El
+.Ss Performance considerations
+In general, PV drivers will perform better than emulated hardware, and are
+the recommended configuration for HVM installations.
+.Pp
+Using a hypervisor introduces a second layer of scheduling that may limit the
+effectiveness of certain
+.Fx
+scheduling optimisations.
+Among these is adaptive locking, which is no longer able to determine whether
+a thread holding a lock is in execution.
+It is recommended that adaptive locking be disabled when using Xen:
+.Bd -unfilled -offset indent
+.Cd "options NO_ADAPTIVE_MUTEXES"
+.Cd "options NO_ADAPTIVE_RWLOCKS"
+.Cd "options NO_ADAPTIVE_SX"
+.Ed
 .Sh SEE ALSO
 .Xr pae 4
 .Sh HISTORY
@@ -90,7 +159,7 @@ first appeared in
 .An -nosplit
 .Fx
 support for Xen was first added by
-.An Kip Mac Aq kmacy at FreeBSD.org
+.An Kip Macy Aq kmacy at FreeBSD.org
 and
 .An Doug Rabson Aq dfr at FreeBSD.org .
 Further refinements were made by
@@ -109,7 +178,8 @@ amd64.
 .Pp
 Para-virtualized drivers under hardware-assisted virtualization (HVM) kernel
 are only supported on amd64, not i386.
-.P
-As of this release, Xen DomU support is not heavily tested; instability has
-been reported during VM migration of PV kernels, and certain PV driver
-features, such as the balloon driver, are under-exercised.
+.Pp
+As of this release, Xen PV DomU support is not heavily tested; instability
+has been reported during VM migration of PV kernels.
+.Pp
+Certain PV driver features, such as the balloon driver, are under-exercised.


More information about the svn-src-stable-8 mailing list