qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [PATCH v9 04/13] dirty-bitmap: add locked state


From: Vladimir Sementsov-Ogievskiy
Subject: Re: [Qemu-block] [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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]