[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v9 04/13] dirty-bitmap: add locked state
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
Re: [Qemu-devel] [PATCH v9 04/13] dirty-bitmap: add locked state |
Date: |
Fri, 22 Dec 2017 11:46:15 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 |
20.12.2017 18:49, Vladimir Sementsov-Ogievskiy wrote:
Add special state, when qmp operations on the bitmap are disabled.
It is needed during bitmap migration. "Frozen" state is not
appropriate here, because it looks like bitmap is unchanged.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
---
[...]
+void bdrv_dirty_bitmap_set_qmp_locked(BdrvDirtyBitmap *bitmap, bool qmp_locked)
+{
+ qemu_mutex_lock(bitmap->mutex);
+ bitmap->qmp_locked = qmp_locked;
+ qemu_mutex_unlock(bitmap->mutex);
+}
+
+bool bdrv_dirty_bitmap_qmp_locked(BdrvDirtyBitmap *bitmap)
+{
+ return bitmap->qmp_locked;
+}
+
/* Called with BQL taken. */
bool bdrv_dirty_bitmap_enabled(BdrvDirtyBitmap *bitmap)
{
@@ -197,6 +211,8 @@ DirtyBitmapStatus bdrv_dirty_bitmap_status(BdrvDirtyBitmap
*bitmap)
{
if (bdrv_dirty_bitmap_frozen(bitmap)) {
return DIRTY_BITMAP_STATUS_FROZEN;
+ } else if (!bdrv_dirty_bitmap_qmp_locked(bitmap)) {
should be without "!", it breaks 124 iotest.
+ return DIRTY_BITMAP_STATUS_LOCKED;
} else if (!bdrv_dirty_bitmap_enabled(bitmap)) {
return DIRTY_BITMAP_STATUS_DISABLED;
} else {
diff --git a/blockdev.c b/blockdev.c
index 56a6b24a0b..82b2956c5c 100644
--- a/blockdev.c
--
Best regards,
Vladimir
- Re: [Qemu-devel] [PATCH v9 06/13] qapi: add dirty-bitmaps migration capability, (continued)
- [Qemu-devel] [PATCH v9 11/13] iotests: add default node-name, Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 07/13] migration: include migrate_dirty_bitmaps in migrate_postcopy, Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 08/13] migration/qemu-file: add qemu_put_counted_string(), Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 04/13] dirty-bitmap: add locked state, Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 03/13] block/dirty-bitmap: add _locked version of bdrv_reclaim_dirty_bitmap, Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 09/13] migration: add is_active_iterate handler, Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 05/13] migration: introduce postcopy-only pending, Vladimir Sementsov-Ogievskiy, 2017/12/20
- [Qemu-devel] [PATCH v9 12/13] iotests: add dirty bitmap migration test, Vladimir Sementsov-Ogievskiy, 2017/12/20