Re: [RFC] migration/block-dirty-bitmap: make loading bitmap for device with iothread future-proof

2023-10-05 Thread Fiona Ebner
Am 04.10.23 um 18:13 schrieb Vladimir Sementsov-Ogievskiy: >> @@ -833,7 +836,10 @@ static int dirty_bitmap_load_start(QEMUFile *f, >> DBMLoadState *s) >>     bdrv_disable_dirty_bitmap(s->bitmap); >>   if (flags & DIRTY_BITMAP_MIG_START_FLAG_ENABLED) { >> +    AioContext *ctx =

Re: [RFC] migration/block-dirty-bitmap: make loading bitmap for device with iothread future-proof

2023-10-04 Thread Vladimir Sementsov-Ogievskiy
On 31.07.23 10:35, Juan Quintela wrote: Fiona Ebner wrote: The bdrv_create_dirty_bitmap() function (which is also called by bdrv_dirty_bitmap_create_successor()) uses bdrv_getlength(bs). This is a wrapper around a coroutine, and when not called in coroutine context would use bdrv_poll_co().

Re: [RFC] migration/block-dirty-bitmap: make loading bitmap for device with iothread future-proof

2023-10-04 Thread Vladimir Sementsov-Ogievskiy
add Kevin, Paolo, Emanuele, pls take a look On 28.07.23 16:39, Fiona Ebner wrote: The bdrv_create_dirty_bitmap() function (which is also called by bdrv_dirty_bitmap_create_successor()) uses bdrv_getlength(bs). This is a wrapper around a coroutine, and when not called in coroutine context would

Re: [RFC] migration/block-dirty-bitmap: make loading bitmap for device with iothread future-proof

2023-08-01 Thread Fiona Ebner
Am 31.07.23 um 09:35 schrieb Juan Quintela: > Fiona Ebner wrote: >> The bdrv_create_dirty_bitmap() function (which is also called by >> bdrv_dirty_bitmap_create_successor()) uses bdrv_getlength(bs). This is >> a wrapper around a coroutine, and when not called in coroutine context >> would use

Re: [RFC] migration/block-dirty-bitmap: make loading bitmap for device with iothread future-proof

2023-07-31 Thread Juan Quintela
Fiona Ebner wrote: > The bdrv_create_dirty_bitmap() function (which is also called by > bdrv_dirty_bitmap_create_successor()) uses bdrv_getlength(bs). This is > a wrapper around a coroutine, and when not called in coroutine context > would use bdrv_poll_co(). Such a call would trigger an assert()

[RFC] migration/block-dirty-bitmap: make loading bitmap for device with iothread future-proof

2023-07-28 Thread Fiona Ebner
The bdrv_create_dirty_bitmap() function (which is also called by bdrv_dirty_bitmap_create_successor()) uses bdrv_getlength(bs). This is a wrapper around a coroutine, and when not called in coroutine context would use bdrv_poll_co(). Such a call would trigger an assert() if the correct AioContext