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. :)

Paolo


Reply via email to