Re: [PATCH] virtio-blk: allow toggling host cache between writeback and writethrough

Paolo Bonzini
2012-07-05T06:46:15Z

Il 04/07/2012 23:30, Michael S. Tsirkin ha scritto:
>>>>>> +static int virtblk_get_cache_mode(struct virtio_device *vdev)
>>>>>
>>>>> Why are you converting u8 to int here?
>>>>
>>>> The fact that it is a u8 is really an internal detail. Perhaps the bug
>>>> is using u8 in the callers.
>>>
>>> Make it bool then?
>>>
>>> You are using u8 in the config. So you could get any value
>>> besides 0 and 1, and you interpret that as 1.
>>> Is 1 always a safe value? If not maybe it's better to set
>>> to a safe value if it is not 0 or 1, that is we don't know how to interpret it.
>>
>> That would be a host bug; the spec only gives meaning to 0 and 1.
>
> Yes but if the other side does not validate values implementations
> *will* have bugs. Why not declare bits 1-7 reserved?

Ok, that would be a different change. I thought about it yesterday, but
it seemed like a useless complication. It's not like we have been
adding configuration fields every other week. :)

But I can certainly prepare patches to both virtio-blk and the spec for
that if you prefer.

Paolo