]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa: kernel.sh: update for read-only changes 31846/head
authorIlya Dryomov <idryomov@gmail.com>
Mon, 18 Nov 2019 17:15:10 +0000 (18:15 +0100)
committerNathan Cutler <ncutler@suse.com>
Mon, 25 Nov 2019 11:41:37 +0000 (12:41 +0100)
Snapshot existence validation code was removed from krbd.  It was racy
and relied on having watch established for snapshots.

Fixes: https://tracker.ceph.com/issues/42916
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit 6fb544045e743c5dc73dac2f62aeeb964dcd62bc)

qa/workunits/rbd/kernel.sh

index 5fb6b9358a01951543ce11e2b046ea527a832d1e..e7736c87a62d50543f62fbdc47b1a1a3454eb199 100755 (executable)
@@ -9,6 +9,10 @@ fi
 
 TMP_FILES="/tmp/img1 /tmp/img1.small /tmp/img1.snap1 /tmp/img1.export /tmp/img1.trunc"
 
+function expect_false() {
+       if "$@"; then return 1; else return 0; fi
+}
+
 function get_device_dir {
        local POOL=$1
        local IMAGE=$2
@@ -82,8 +86,9 @@ cmp /tmp/img1 /tmp/img1.snap1
 sudo dd if=/dev/rbd/rbd/testimg1 of=/tmp/img1.export
 cmp /tmp/img1 /tmp/img1.export
 
-# remove snapshot and detect error from mapped snapshot
+# zeros are returned if an image or a snapshot is removed
+expect_false cmp -n 76800000 /dev/rbd/rbd/testimg1@snap1 /dev/zero
 rbd snap rm --snap=snap1 testimg1
-sudo dd if=/dev/rbd/rbd/testimg1@snap1 of=/tmp/img1.snap1 2>&1 | grep 'Input/output error'
+cmp -n 76800000 /dev/rbd/rbd/testimg1@snap1 /dev/zero
 
 echo OK