I've restarted my VM and tried again.
This is what I see:
adriatic:~# lsof /dev/md124
adriatic:~# virsh attach-device cedric.CalvaEDI.COM zz.xml
error: Failed to attach device from zz.xml
error: internal error unable to execute QEMU command 'device_add': Bus
'pci.0' does not support hotplugging
adriatic:~# lsof /dev/md124
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
kvm 30592 libvirt-qemu 28u BLK 9,124 0x3a3797b0000 4608551
/dev/md124
adriatic:~#
So libvirt doesn't think the device has been attached, but kvm has
opened it. Nothing seems to have happened in the guest (running 3.16
backport).
Here's what libvirt tried to do:
5302 write(21,
"{\"execute\":\"drive_add\",\"arguments\":{\"pci_addr\":\"dummy\",\"opts\":\"file=/dev/disk/by-id/md-name-cedric:new,if=none,id=drive-virtio-disk3,format=raw,cache=none\"},\"id\":\"libvirt-7\"}\r\n",
176) = 176
5302 read(21, "{\"id\": \"libvirt-7\", \"error\": {\"class\":
\"CommandNotFound\", \"desc\": \"The command drive_add has not been
found\", \"data\": {\"name\": \"drive_add\"}}}\r\n", 1023) = 143
5302 read(21, 0x7f31a4247b3f, 880) = -1 EAGAIN (Resource
temporarily unavailable)
5302 write(21,
"{\"execute\":\"human-monitor-command\",\"arguments\":{\"command-line\":\"drive_add
dummy
file=/dev/disk/by-id/md-name-cedric:new,if=none,id=drive-virtio-disk3,format=raw,cache=none\"},\"id\":\"libvirt-8\"}\r\n",
193) = 193
5302 read(21, "{\"return\": \"OK\\r\\n\", \"id\": \"libvirt-8\"}\r\n",
1023) = 41
5302 read(21, 0xa220d9, 982) = -1 EAGAIN (Resource
temporarily unavailable)
5302 write(21,
"{\"execute\":\"device_add\",\"arguments\":{\"driver\":\"virtio-blk-pci\",\"scsi\":\"off\",\"bus\":\"pci.0\",\"addr\":\"0x8\",\"drive\":\"drive-virtio-disk3\",\"id\":\"virtio-disk3\"},\"id\":\"libvirt-9\"}\r\n",
172) = 172
5302 read(21, "{\"id\": \"libvirt-9\", \"error\": {\"class\":
\"BusNoHotplug\", \"desc\": \"Bus 'pci.0' does not support
hotplugging\", \"data\": {\"bus\": \"pci.0\"}}}\r\n", 1023) = 135
So first it tries drive_add, which is an unknown command.
Then it tries "human-monitor-command drive_add", which seems to work,
but has no effect on the guest
Then, even though the "human-monitor-command" worked it tries
"device_add", which fails, possibly because the "human-monitor-command
drive_add" added something with the same id.
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org