mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-08-29 03:51:17 +00:00
There is this class of PCI devices that act like disks: NVMe. Therefore, they are both PCI devices and disks. While we already have <hostdev/> (and can assign a NVMe device to a domain successfully) we don't have disk representation. There are three problems with PCI assignment in case of a NVMe device: 1) domains with <hostdev/> can't be migrated 2) NVMe device is assigned whole, there's no way to assign only a namespace 3) Because hypervisors see <hostdev/> they don't put block layer on top of it - users don't get all the fancy features like snapshots NVMe namespaces are way of splitting one continuous NVDIMM memory into smaller ones, effectively creating smaller NVMe-s (which can then be partitioned, LVMed, etc.) Because of all of this the following XML was chosen to model a NVMe device: <disk type='nvme' device='disk'> <driver name='qemu' type='raw'/> <source type='pci' managed='yes' namespace='1'> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <target dev='vda' bus='virtio'/> </disk> Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Cole Robinson <crobinso@redhat.com> |
||
---|---|---|
.. | ||
basictypes.rng | ||
capability.rng | ||
cputypes.rng | ||
domain.rng | ||
domainbackup.rng | ||
domaincaps.rng | ||
domaincheckpoint.rng | ||
domaincommon.rng | ||
domainsnapshot.rng | ||
interface.rng | ||
network.rng | ||
networkcommon.rng | ||
networkport.rng | ||
nodedev.rng | ||
nwfilter_params.rng | ||
nwfilter.rng | ||
nwfilterbinding.rng | ||
secret.rng | ||
storagecommon.rng | ||
storagepool.rng | ||
storagepoolcaps.rng | ||
storagevol.rng |