Comment 3 for bug 1897528

Revision history for this message
Nobuhiro MIKI (nmiki) wrote :

Thanks for the confirmation.

I tried it by actually running qemu with accel=kvm.
On my environment (linux 3.10.0-957.27.2.el7.x86_64), the vfio-pci driver
failed to bind the 32bit PCI domain device before booting the VM. So, it
seems to me that there are a few other things we need to check besides
QEMU to assign 32bit PCI domain device to the VM. Please let me know if
the procedure is wrong.

Anyway, if nova doesn't support the 32bit PCI domain number,
the nova-compute service itself won't be able to start,
regardless of whether we actually use 32bit PCI number device or not.
So, I'd like to send a patch if possible.

# 16bit PCI domain number, booted successfully
$ sudo qemu-system-x86_64 -machine pc-i440fx-2.11,accel=kvm -nographic \
  -device vfio-pci,host=0000:5e:02.5 cirros-0.5.1-x86_64-disk.img

# 32bit PCI domain number, failed to boot
$ dmesg
# vfio-pci: probe of 10000:01:00.0 failed with error -22
$ sudo qemu-system-x86_64 -machine pc-i440fx-2.11,accel=kvm -nographic \
  -device vfio-pci,host=10000:01:00.0 cirros-0.5.1-x86_64-disk.img