diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 18:24:20 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 18:24:20 +0000 |
commit | 483eb2f56657e8e7f419ab1a4fab8dce9ade8609 (patch) | |
tree | e5d88d25d870d5dedacb6bbdbe2a966086a0a5cf /qa/rbd/krbd_deep_flatten.t | |
parent | Initial commit. (diff) | |
download | ceph-upstream.tar.xz ceph-upstream.zip |
Adding upstream version 14.2.21.upstream/14.2.21upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'qa/rbd/krbd_deep_flatten.t')
-rw-r--r-- | qa/rbd/krbd_deep_flatten.t | 329 |
1 files changed, 329 insertions, 0 deletions
diff --git a/qa/rbd/krbd_deep_flatten.t b/qa/rbd/krbd_deep_flatten.t new file mode 100644 index 00000000..7235f003 --- /dev/null +++ b/qa/rbd/krbd_deep_flatten.t @@ -0,0 +1,329 @@ + +Write: + + $ rbd create --size 12M --image-feature layering,deep-flatten img + $ DEV=$(sudo rbd map img) + $ xfs_io -c 'pwrite -w 0 12M' $DEV >/dev/null + $ sudo rbd unmap $DEV + $ rbd snap create img@snap + $ rbd snap protect img@snap + $ rbd clone img@snap cloneimg + $ rbd snap create cloneimg@snap + $ DEV=$(sudo rbd map cloneimg) + $ xfs_io -c 'pwrite -S 0xab -w 6M 1k' $DEV >/dev/null + $ sudo rbd unmap $DEV + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0600000 abab abab abab abab abab abab abab abab + * + 0600400 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd flatten --no-progress cloneimg + $ rbd snap unprotect img@snap + $ rbd snap rm --no-progress img@snap + $ rbd rm --no-progress img + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0600000 abab abab abab abab abab abab abab abab + * + 0600400 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd snap rm --no-progress cloneimg@snap + $ rbd rm --no-progress cloneimg + +Write, whole object: + + $ rbd create --size 12M --image-feature layering,deep-flatten img + $ DEV=$(sudo rbd map img) + $ xfs_io -c 'pwrite -w 0 12M' $DEV >/dev/null + $ sudo rbd unmap $DEV + $ rbd snap create img@snap + $ rbd snap protect img@snap + $ rbd clone img@snap cloneimg + $ rbd snap create cloneimg@snap + $ DEV=$(sudo rbd map cloneimg) + $ xfs_io -d -c 'pwrite -b 4M -S 0xab 4M 4M' $DEV >/dev/null + $ sudo rbd unmap $DEV + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0400000 abab abab abab abab abab abab abab abab + * + 0800000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd flatten --no-progress cloneimg + $ rbd snap unprotect img@snap + $ rbd snap rm --no-progress img@snap + $ rbd rm --no-progress img + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0400000 abab abab abab abab abab abab abab abab + * + 0800000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd snap rm --no-progress cloneimg@snap + $ rbd rm --no-progress cloneimg + +Zeroout: + + $ rbd create --size 12M --image-feature layering,deep-flatten img + $ DEV=$(sudo rbd map img) + $ xfs_io -c 'pwrite -w 0 12M' $DEV >/dev/null + $ sudo rbd unmap $DEV + $ rbd snap create img@snap + $ rbd snap protect img@snap + $ rbd clone img@snap cloneimg + $ rbd snap create cloneimg@snap + $ DEV=$(sudo rbd map cloneimg) + $ fallocate -z -o 6M -l 1k $DEV + $ sudo rbd unmap $DEV + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0600000 0000 0000 0000 0000 0000 0000 0000 0000 + * + 0600400 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd flatten --no-progress cloneimg + $ rbd snap unprotect img@snap + $ rbd snap rm --no-progress img@snap + $ rbd rm --no-progress img + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0600000 0000 0000 0000 0000 0000 0000 0000 0000 + * + 0600400 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd snap rm --no-progress cloneimg@snap + $ rbd rm --no-progress cloneimg + +Zeroout, whole object: + + $ rbd create --size 12M --image-feature layering,deep-flatten img + $ DEV=$(sudo rbd map img) + $ xfs_io -c 'pwrite -w 0 12M' $DEV >/dev/null + $ sudo rbd unmap $DEV + $ rbd snap create img@snap + $ rbd snap protect img@snap + $ rbd clone img@snap cloneimg + $ rbd snap create cloneimg@snap + $ DEV=$(sudo rbd map cloneimg) + $ fallocate -z -o 4M -l 4M $DEV + $ sudo rbd unmap $DEV + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0400000 0000 0000 0000 0000 0000 0000 0000 0000 + * + 0800000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd flatten --no-progress cloneimg + $ rbd snap unprotect img@snap + $ rbd snap rm --no-progress img@snap + $ rbd rm --no-progress img + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0400000 0000 0000 0000 0000 0000 0000 0000 0000 + * + 0800000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd snap rm --no-progress cloneimg@snap + $ rbd rm --no-progress cloneimg + +Discard, whole object, empty clone: + + $ rbd create --size 12M --image-feature layering,deep-flatten img + $ DEV=$(sudo rbd map img) + $ xfs_io -c 'pwrite -w 0 12M' $DEV >/dev/null + $ sudo rbd unmap $DEV + $ rbd snap create img@snap + $ rbd snap protect img@snap + $ rbd clone img@snap cloneimg + $ rbd snap create cloneimg@snap + $ DEV=$(sudo rbd map cloneimg) + $ blkdiscard -o 4M -l 4M $DEV + $ sudo rbd unmap $DEV + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd flatten --no-progress cloneimg + $ rbd snap unprotect img@snap + $ rbd snap rm --no-progress img@snap + $ rbd rm --no-progress img + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd snap rm --no-progress cloneimg@snap + $ rbd rm --no-progress cloneimg + +Discard, whole object, full clone: + + $ rbd create --size 12M --image-feature layering,deep-flatten img + $ DEV=$(sudo rbd map img) + $ xfs_io -c 'pwrite -w 0 12M' $DEV >/dev/null + $ sudo rbd unmap $DEV + $ rbd snap create img@snap + $ rbd snap protect img@snap + $ rbd clone img@snap cloneimg + $ rbd snap create cloneimg@snap + $ DEV=$(sudo rbd map cloneimg) + $ xfs_io -c 'pwrite -S 0xab -w 0 12M' $DEV >/dev/null + $ blkdiscard -o 4M -l 4M $DEV + $ sudo rbd unmap $DEV + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 abab abab abab abab abab abab abab abab + * + 0400000 0000 0000 0000 0000 0000 0000 0000 0000 + * + 0800000 abab abab abab abab abab abab abab abab + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd flatten --no-progress cloneimg + $ rbd snap unprotect img@snap + $ rbd snap rm --no-progress img@snap + $ rbd rm --no-progress img + + $ DEV=$(sudo rbd map cloneimg) + $ hexdump $DEV + 0000000 abab abab abab abab abab abab abab abab + * + 0400000 0000 0000 0000 0000 0000 0000 0000 0000 + * + 0800000 abab abab abab abab abab abab abab abab + * + 0c00000 + $ sudo rbd unmap $DEV + $ DEV=$(sudo rbd map cloneimg@snap) + $ hexdump $DEV + 0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd + * + 0c00000 + $ sudo rbd unmap $DEV + + $ rbd snap rm --no-progress cloneimg@snap + $ rbd rm --no-progress cloneimg |