On Tue, Oct 16, 2018 at 04:20:18PM +0300, Vladimir Sementsov-Ogievskiy wrote: > Theoretically possible that we finish the skipping loop with bs = NULL > and the following code will crash trying to dereference it. Fix that. > > Signed-off-by: Vladimir Sementsov-Ogievskiy <vsement...@virtuozzo.com> > --- > migration/block-dirty-bitmap.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/migration/block-dirty-bitmap.c b/migration/block-dirty-bitmap.c > index 477826330c..6de808f95f 100644 > --- a/migration/block-dirty-bitmap.c > +++ b/migration/block-dirty-bitmap.c > @@ -288,6 +288,10 @@ static int init_dirty_bitmap_migration(void) > bs = backing_bs(bs); > } > > + if (!bs || bs->implicit) { > + continue; > + } > + > for (bitmap = bdrv_dirty_bitmap_next(bs, NULL); bitmap; > bitmap = bdrv_dirty_bitmap_next(bs, bitmap)) > {
Previous discussion: http://qemu.11.n7.nabble.com/PATCH-migration-Appease-coverity-skip-empty-block-trees-td582504.html I've CCed John so he can take a look.
signature.asc
Description: PGP signature