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? Kevin