version 1.171, 2020/10/31 16:33:14
|
version 1.176, 2020/11/13 20:40:04
|
Line 8 systems which operate in an unprivileged
|
Line 8 systems which operate in an unprivileged
|
from the domU systems are forwarded by the Xen hypervisor to the dom0 to be |
from the domU systems are forwarded by the Xen hypervisor to the dom0 to be |
fulfilled. |
fulfilled. |
|
|
Xen supports different styles of guests; see https://wiki.xen.org/wiki/PV_on_HVM and https://wiki.xenproject.org/wiki/PVH_(v2)_Domu for upstream documentation. |
Xen supports different styles of guests; see [PV on HVM](https://wiki.xen.org/wiki/PV_on_HVM) and [PVH(v2)](https://wiki.xenproject.org/wiki/PVH_(v2)_Domu) for upstream documentation. |
|
|
[[!table data=""" |
[[!table data=""" |
Style of guest |Supported by NetBSD |
Style of guest |Supported by NetBSD |
PV |Yes (dom0, domU) |
PV |Yes (dom0, domU) |
HVM |Yes (domU) |
HVM |Yes (domU) |
PVH |current-only (domU, dom0 not yet) |
|
PVHVM |current-only (domU) |
PVHVM |current-only (domU) |
|
PVHv2 |current-only (domU, dom0 not yet) |
"""]] |
"""]] |
|
|
In Para-Virtualized (PV) mode, the guest OS does not attempt to access |
In Para-Virtualized (PV) mode, the guest OS does not attempt to access |
Line 25 guests must be specifically coded for Xe
|
Line 25 guests must be specifically coded for Xe
|
In HVM mode, no guest modification is required; however, hardware |
In HVM mode, no guest modification is required; however, hardware |
support is required, such as VT-x on Intel CPUs and SVM on AMD CPUs. |
support is required, such as VT-x on Intel CPUs and SVM on AMD CPUs. |
|
|
In PVH mode, the guest uses PV interfaces for IO and native interfaces for everything else. |
In PVHVM mode, the guest runs as HVM, but additionally can use PV |
|
drivers for efficiency. |
|
|
In PVHVM mode, the guest mostly runs as HVM, but can use PV drivers for efficiency. |
In PVHv2H mode, operation is similar to PVHVM, except that qemu is not |
|
run and thus the PV interfaces for console, disks, networking are the |
\todo Explain about "HVM with PV drivers". |
only way to access these resources. |
|
|
At boot, the dom0 kernel is loaded as a module with Xen as the kernel. |
At boot, the dom0 kernel is loaded as a module with Xen as the kernel. |
The dom0 can start one or more domUs. (Booting is explained in detail |
The dom0 can start one or more domUs. (Booting is explained in detail |
Line 42 website](http://www.xenproject.org/).
|
Line 43 website](http://www.xenproject.org/).
|
|
|
[[!toc]] |
[[!toc]] |
|
|
#Versions and Support |
# Versions and Support |
|
|
In NetBSD, Xen is provided in pkgsrc, via matching pairs of packages |
In NetBSD, Xen is provided in pkgsrc, via matching pairs of packages |
xenkernel and xentools. We will refer only to the kernel versions, |
xenkernel and xentools. We will refer only to the kernel versions, |
Line 53 Versions available in pkgsrc:
|
Line 54 Versions available in pkgsrc:
|
|
|
[[!table data=""" |
[[!table data=""" |
Xen Version |Package Name |Xen CPU Support |xm? |EOL'ed By Upstream |
Xen Version |Package Name |Xen CPU Support |xm? |EOL'ed By Upstream |
4.2 |xenkernel42 |i386 x86_64 |yes |Yes |
|
4.5 |xenkernel45 |x86_64 | |Yes |
|
4.6 |xenkernel46 |x86_64 | |Yes |
|
4.8 |xenkernel48 |x86_64 | |Yes |
|
4.11 |xenkernel411 |x86_64 | |No |
4.11 |xenkernel411 |x86_64 | |No |
|
4.13 |xenkernel413 |x86_64 | |No |
"""]] |
"""]] |
|
|
See also the [Xen Security Advisory page](http://xenbits.xen.org/xsa/). |
See also the [Xen Security Advisory page](http://xenbits.xen.org/xsa/). |
Line 74 Note: NetBSD support is called XEN3. Ho
|
Line 72 Note: NetBSD support is called XEN3. Ho
|
because the hypercall interface has remained identical. |
because the hypercall interface has remained identical. |
|
|
Older Xen had a python-based management tool called xm, now replaced |
Older Xen had a python-based management tool called xm, now replaced |
by xl. xm is obsolete, but 4.2 remains in pkgsrc because migrating |
by xl. |
from xm to xl is not always trivial, and because 4.2 is the last |
|
version to run on an i386 dom0. |
|
|
|
Architecture |
Architecture |
------------ |
------------ |
|
|
Xen 4.5 and later runs on x86_64 hardware (the NetBSD amd64 port). |
Xen 4.5 and later runs on x86_64 hardware (the NetBSD amd64 port). |
Xen 4.2 can in theory use i386 hardware, but we do not have |
There is a concept of Xen running on ARM, but there are no reports of this working with NetBSD. |
recent reports of success. |
|
|
|
The dom0 system, plus each domU, can be either i386PAE or amd64. |
|
i386 without PAE is not supported. |
|
|
|
The standard approach is to use NetBSD/amd64 for the dom0. |
|
|
|
To use an i386PAE dom0 (other than on 4.2), one must build or obtain a |
The dom0 system should be amd64. (Instructions for i386PAE dom0 have been removed from the HOWTO.) |
64bit Xen kernel and install it on the system. |
|
|
|
For domUs, i386PAE is considered as |
The domU can be i386PAE or amd64. |
[faster](https://lists.xen.org/archives/html/xen-devel/2012-07/msg00085.html) |
i386PAE at one point was considered as [faster](https://lists.xen.org/archives/html/xen-devel/2012-07/msg00085.html) than amd64. |
than amd64. |
|
|
|
# Creating a dom0 |
# Creating a dom0 |
|
|
Line 637 note that only the "xpci" lines are unus
|
Line 625 note that only the "xpci" lines are unus
|
cd* at scsibus? target ? lun ? # SCSI CD-ROM drives |
cd* at scsibus? target ? lun ? # SCSI CD-ROM drives |
|
|
|
|
#NetBSD as a domU in a VPS |
# Specific Issues |
|
|
|
## domU |
|
|
|
[NetBSD 5 is known to panic.](http://mail-index.netbsd.org/port-xen/2018/04/17/msg009181.html) |
|
(However, NetBSD 5 systems should be updated to a supported version.) |
|
|
|
# NetBSD as a domU in a VPS |
|
|
The bulk of the HOWTO is about using NetBSD as a dom0 on your own |
The bulk of the HOWTO is about using NetBSD as a dom0 on your own |
hardware. This section explains how to deal with Xen in a domU as a |
hardware. This section explains how to deal with Xen in a domU as a |