Il 29/07/2013 16:10, Kevin Wolf ha scritto:
> Am 29.07.2013 um 15:47 hat Paolo Bonzini geschrieben:
>> Il 29/07/2013 15:13, Kevin Wolf ha scritto:
>>> Am 25.07.2013 um 16:23 hat Paolo Bonzini geschrieben:
>>>> If a BlockDriverState is growable, after every write we need to
>>>> check if bs->total_sectors might have changed.
>>>>
>>>> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
>>>> ---
>>>>  block.c | 3 +++
>>>>  1 file changed, 3 insertions(+)
>>>>
>>>> diff --git a/block.c b/block.c
>>>> index 6cd39fa..ebac2fa 100644
>>>> --- a/block.c
>>>> +++ b/block.c
>>>> @@ -2651,6 +2651,9 @@ static int coroutine_fn 
>>>> bdrv_co_do_writev(BlockDriverState *bs,
>>>>      if (bs->wr_highest_sector < sector_num + nb_sectors - 1) {
>>>>          bs->wr_highest_sector = sector_num + nb_sectors - 1;
>>>>      }
>>>> +    if (bs->growable && ret >= 0) {
>>>> +        bs->total_sectors = MAX(bs->total_sectors, sector_num + 
>>>> nb_sectors);
>>>> +    }
>>>
>>> Can we change bdrv_getlength() to use bs->total_sectors even for
>>> growable images after this patch?
>>
>> Probably, but not in 1.6. :)
> 
> "Probably" was my conclusion as well. The answer to this question is the
> answer to whether this patch makes sense, I think. So I can give you a
> Probably-reviewed-by if that's of any use. ;-)
> 
> FWIW, I've got the feeling that the whole series might be better suited
> for block-next. Is there anything urgent in it?

No, I don't think so.

Paolo


Reply via email to