On Tue, Mar 12, 2024 at 01:04:31PM +0100, Cédric Le Goater wrote: > The block .save_setup() handler calls a helper routine > init_blk_migration() which builds a list of block devices to take into > account for migration. When one device is found to be empty (sectors > == 0), the loop exits and all the remaining devices are ignored. This > is a regression introduced when bdrv_iterate() was removed. > > Change that by skipping only empty devices. > > Cc: Markus Armbruster <arm...@redhat.com> > Suggested: Kevin Wolf <kw...@redhat.com>
This should be: Suggested-by: Kevin Wolf <kw...@redhat.com> I think the missed "by" caused Kevin not in the cc list, I added Kevin in. I'll hold a bit for Kevin to ACK, no repost needed just for above; I can fix it. Thanks, > Fixes: fea68bb6e9fa ("block: Eliminate bdrv_iterate(), use bdrv_next()") > Signed-off-by: Cédric Le Goater <c...@redhat.com> > --- > migration/block.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/migration/block.c b/migration/block.c > index > 8c6ebafacc1ffe930d1d4f19d968817b14852c69..2b9054889ad2ba739828594c50cf047703757e96 > 100644 > --- a/migration/block.c > +++ b/migration/block.c > @@ -402,7 +402,10 @@ static int init_blk_migration(QEMUFile *f) > } > > sectors = bdrv_nb_sectors(bs); > - if (sectors <= 0) { > + if (sectors == 0) { > + continue; > + } > + if (sectors < 0) { > ret = sectors; > bdrv_next_cleanup(&it); > goto out; > -- > 2.44.0 > > -- Peter Xu