[libvirt] [PATCH 12/13] qemu: only add channel arg to scsi-disk if qemu binary supports it

Laine Stump laine at laine.org
Thu May 14 16:29:42 UTC 2015

On 05/11/2015 04:26 AM, Ján Tomko wrote:
> 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
>> 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.

If you're referring to patch 13 of this series, it actually *removes* an
error condition when -device *is* supported. We had been limiting scsi
devices to only bus='0' due to a limitation that only applied when not
using -device. So that patch adds extra functionality to hosts with
newer qemu.

More information about the libvir-list mailing list