On Tue, May 05, 2015 at 02:03:17PM -0400, Laine Stump wrote:
libvirt enforces bus (channel to qemu) == 0 for those qemu binaries
that don't support the channel argument to scsi disk devices, but
still adds "channel=0" in those cases. Apparently nobody with a qemu
old enough to not support channel ever uses these devices, because
they otherwise should get an error.
This patch only adds channel when the scsi-disk.channel capability is
set for the qemu binary. Most of the change in the patch is updating
patches to either 1) remove channel=0 from the .args file of the test,
or 2) reposition channel=0 to precede the bus arg (because this makes
the code cleaner/simpler) and change the DO_TEST() invocation for the
test to add QEMU_CAPS_SCSI_DISK_CHANNEL.
I'm uncommitted about whether or not it is worthwhile to push this
patch. On one hand, I'm fairly certain this is what is correct; on the
other hand nobody has ever complained about it, and at this point
almost everyone is using new enough qemu that it supports channel.
---
Can we introduce a new rule that allows us to delete functionality that
was broken for three years and nobody complained? :)
Similarly, the last patch adding an error message when QEMU_CAPS_DEVICE
is missing is practically dead code - I doubt someone is running qemu
that old with the latest libvirt.
Jan