]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
librbd: object map clean state valid only for fast-diff 4623/head
authorJason Dillaman <dillaman@redhat.com>
Fri, 8 May 2015 14:30:22 +0000 (10:30 -0400)
committerJason Dillaman <dillaman@redhat.com>
Fri, 8 May 2015 17:32:09 +0000 (13:32 -0400)
The deep-flatten feature bit is incorrectly used to determine
whether to set the object map to clean.  It should use the
fast-diff feature bit.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/CopyupRequest.cc
src/test/librbd/test_internal.cc

index a63a59bc94bcbfb96b5f098753bb53684f36eaab..8851b4c4a1501e55b7bd0241c78bc0f4acf3291e 100644 (file)
@@ -50,7 +50,7 @@ public:
     }
 
     uint8_t state = OBJECT_EXISTS;
-    if (m_image_ctx.test_features(RBD_FEATURE_DEEP_FLATTEN) &&
+    if (m_image_ctx.test_features(RBD_FEATURE_FAST_DIFF) &&
         m_snap_id_idx + 1 < m_snap_ids.size()) {
       state = OBJECT_EXISTS_CLEAN;
     }
index bac02049ede11e9a77c1e0ba3ba8a13f8dd20b5e..6a80009cd9f10ebfddc4c3f27e48d25aa8a297c9 100644 (file)
@@ -482,7 +482,7 @@ TEST_F(TestInternal, SnapshotCopyup)
     // verify the object map was properly updated
     if ((ictx2->features & RBD_FEATURE_OBJECT_MAP) != 0) {
       uint8_t state = OBJECT_EXISTS;
-      if ((ictx2->features & RBD_FEATURE_DEEP_FLATTEN) != 0 &&
+      if ((ictx2->features & RBD_FEATURE_FAST_DIFF) != 0 &&
           it != snaps.begin() && snap_name != NULL) {
         state = OBJECT_EXISTS_CLEAN;
       }