Michal Privoznik e1b022890e schemas: Introduce disk type NVMe
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>
2019-12-17 10:04:43 +01:00
..
2016-11-21 13:15:12 +01:00
2019-11-05 12:12:14 +01:00
2019-06-20 17:01:44 +02:00
2019-08-29 12:46:33 +01:00
2019-12-17 10:04:43 +01:00
2017-10-16 10:22:34 +01:00
2018-05-03 12:40:37 +01:00
2019-04-09 16:59:49 +02:00
2019-09-03 15:37:54 -06:00
2019-08-28 13:39:26 +02:00
2018-12-17 17:52:46 +01:00
2018-12-17 17:52:46 +01:00
2019-12-04 15:48:28 +00:00
2017-08-02 15:00:28 -04:00
2019-07-09 10:42:39 -05:00
2019-12-16 10:31:18 +01:00