]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
qa: kernel.sh: update for read-only changes
authorIlya Dryomov <idryomov@gmail.com>
Mon, 18 Nov 2019 17:15:10 +0000 (18:15 +0100)
committerIlya Dryomov <idryomov@gmail.com>
Wed, 20 Nov 2019 20:32:45 +0000 (21:32 +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>
qa/workunits/rbd/kernel.sh

index f733b93c10f23a30af8263bb37a541ea3872e35f..4c15983d4b3a25b13ee2c751e029ce2197ada4d8 100755 (executable)
@@ -10,6 +10,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
@@ -84,8 +88,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