[libvirt] [PATCH] lib: fix no zero arg check for iothread_id

Luyao Huang lhuang at redhat.com
Mon Aug 10 13:44:58 UTC 2015


On 08/10/2015 09:17 PM, John Ferlan wrote:
>
> On 08/10/2015 05:23 AM, Peter Krempa wrote:
>> On Mon, Aug 10, 2015 at 17:06:31 +0800, Luyao Huang wrote:
>>> https://bugzilla.redhat.com/show_bug.cgi?id=1251886
>>>
>>> We do not allow delete an iothread which id is 0 in
>>> virDomainDelIOThread, but allow it in virDomainAddIOThread,
>>> Also we will output an error when parse an iothread which id
>>> is 0.
>>>
>>> Add a check for iothread_id in virDomainAddIOThread to fix
>>> it.
>> The limitation that iothread id shall not be 0 comes from the qemu
>> implementation so I think that we could possibly want to have iothread
>> id 0 in the future.
>>
> Sort of..  The initial implementation used 0 (zero) as a marker of sorts
> for no iothreads, so 'iothread0' made no sense. At that time there was
> no add/del a specific thread.
>
> However, now that there are iothreadid's to manage the iothreads<N>
> value, it perhaps makes less sense to restrict usage of 0 (zero) except
> of course for historical purposes.  There probably would need to be
> checks in multiple places adjusted though in order to manage the
> iothreadid's which 'assume' we start at 1 and count upwards when there
> is no <iothread id="#"/> provided in the domain XML.

Oh, i see, that is why i cannot find any reason to forbid iothread0 in 
qemu source code, thanks a lot for clearly explanation.

Indeed, if we allow 0 as a valid iothread id and start at 0 will need 
some work to fix the possible issue happen on a guest with iothread 
during update, IMHO: it worth to do that :)

Thanks a lot for your reply

> John

Luyao

>> I think the check should be done in the qemu driver.
>>
>> Peter
>>
>>
>>
>> --
>> libvir-list mailing list
>> libvir-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/libvir-list
>>




More information about the libvir-list mailing list