summaryrefslogtreecommitdiffstats
path: root/qa/suites/krbd
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 18:24:20 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 18:24:20 +0000
commit483eb2f56657e8e7f419ab1a4fab8dce9ade8609 (patch)
treee5d88d25d870d5dedacb6bbdbe2a966086a0a5cf /qa/suites/krbd
parentInitial commit. (diff)
downloadceph-483eb2f56657e8e7f419ab1a4fab8dce9ade8609.tar.xz
ceph-483eb2f56657e8e7f419ab1a4fab8dce9ade8609.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/suites/krbd')
l---------qa/suites/krbd/.qa1
-rw-r--r--qa/suites/krbd/basic/%0
l---------qa/suites/krbd/basic/.qa1
l---------qa/suites/krbd/basic/bluestore-bitmap.yaml1
l---------qa/suites/krbd/basic/ceph/.qa1
-rw-r--r--qa/suites/krbd/basic/ceph/ceph.yaml3
l---------qa/suites/krbd/basic/clusters/.qa1
l---------qa/suites/krbd/basic/clusters/fixed-1.yaml1
-rw-r--r--qa/suites/krbd/basic/conf.yaml7
l---------qa/suites/krbd/basic/ms_mode/.qa1
-rw-r--r--qa/suites/krbd/basic/ms_mode/crc.yaml5
-rw-r--r--qa/suites/krbd/basic/ms_mode/legacy.yaml5
-rw-r--r--qa/suites/krbd/basic/ms_mode/secure.yaml5
l---------qa/suites/krbd/basic/tasks/.qa1
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_deep_flatten.yaml5
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_discard.yaml9
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_huge_image.yaml5
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_msgr_segments.yaml5
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_parent_overlap.yaml5
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_read_only.yaml6
-rw-r--r--qa/suites/krbd/basic/tasks/krbd_whole_object_zeroout.yaml5
-rw-r--r--qa/suites/krbd/fsx/%0
l---------qa/suites/krbd/fsx/.qa1
l---------qa/suites/krbd/fsx/ceph/.qa1
-rw-r--r--qa/suites/krbd/fsx/ceph/ceph.yaml3
l---------qa/suites/krbd/fsx/clusters/.qa1
-rw-r--r--qa/suites/krbd/fsx/clusters/3-node.yaml14
-rw-r--r--qa/suites/krbd/fsx/conf.yaml5
l---------qa/suites/krbd/fsx/ms_mode$/.qa1
-rw-r--r--qa/suites/krbd/fsx/ms_mode$/crc.yaml5
-rw-r--r--qa/suites/krbd/fsx/ms_mode$/legacy.yaml5
-rw-r--r--qa/suites/krbd/fsx/ms_mode$/prefer-crc.yaml5
-rw-r--r--qa/suites/krbd/fsx/ms_mode$/secure.yaml5
l---------qa/suites/krbd/fsx/objectstore/.qa1
l---------qa/suites/krbd/fsx/objectstore/bluestore-bitmap.yaml1
l---------qa/suites/krbd/fsx/objectstore/filestore-xfs.yaml1
l---------qa/suites/krbd/fsx/striping/.qa1
-rw-r--r--qa/suites/krbd/fsx/striping/default/%0
l---------qa/suites/krbd/fsx/striping/default/.qa1
l---------qa/suites/krbd/fsx/striping/default/msgr-failures/.qa1
-rw-r--r--qa/suites/krbd/fsx/striping/default/msgr-failures/few.yaml7
-rw-r--r--qa/suites/krbd/fsx/striping/default/msgr-failures/many.yaml7
-rw-r--r--qa/suites/krbd/fsx/striping/default/randomized-striping-off.yaml3
-rw-r--r--qa/suites/krbd/fsx/striping/fancy/%0
l---------qa/suites/krbd/fsx/striping/fancy/.qa1
l---------qa/suites/krbd/fsx/striping/fancy/msgr-failures/.qa1
-rw-r--r--qa/suites/krbd/fsx/striping/fancy/msgr-failures/few.yaml7
-rw-r--r--qa/suites/krbd/fsx/striping/fancy/randomized-striping-on.yaml3
l---------qa/suites/krbd/fsx/tasks/.qa1
-rw-r--r--qa/suites/krbd/fsx/tasks/fsx-1-client.yaml10
-rw-r--r--qa/suites/krbd/fsx/tasks/fsx-3-client.yaml10
-rw-r--r--qa/suites/krbd/rbd-nomount/%0
l---------qa/suites/krbd/rbd-nomount/.qa1
l---------qa/suites/krbd/rbd-nomount/bluestore-bitmap.yaml1
l---------qa/suites/krbd/rbd-nomount/clusters/.qa1
l---------qa/suites/krbd/rbd-nomount/clusters/fixed-3.yaml1
-rw-r--r--qa/suites/krbd/rbd-nomount/conf.yaml7
l---------qa/suites/krbd/rbd-nomount/install/.qa1
-rw-r--r--qa/suites/krbd/rbd-nomount/install/ceph.yaml3
l---------qa/suites/krbd/rbd-nomount/ms_mode/.qa1
-rw-r--r--qa/suites/krbd/rbd-nomount/ms_mode/crc.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/ms_mode/legacy.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/ms_mode/secure.yaml5
l---------qa/suites/krbd/rbd-nomount/msgr-failures/.qa1
-rw-r--r--qa/suites/krbd/rbd-nomount/msgr-failures/few.yaml7
-rw-r--r--qa/suites/krbd/rbd-nomount/msgr-failures/many.yaml7
l---------qa/suites/krbd/rbd-nomount/tasks/.qa1
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_data_pool.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_exclusive_option.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_fallocate.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_latest_osdmap_on_map.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_namespaces.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_udev_enumerate.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netlink_enobufs.yaml10
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netns.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/krbd_udev_symlinks.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_concurrent.yaml10
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_huge_tickets.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_image_read.yaml15
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_kernel.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_map_snapshot_io.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_map_unmap.yaml5
-rw-r--r--qa/suites/krbd/rbd-nomount/tasks/rbd_simple_big.yaml6
-rw-r--r--qa/suites/krbd/rbd/%0
l---------qa/suites/krbd/rbd/.qa1
l---------qa/suites/krbd/rbd/bluestore-bitmap.yaml1
l---------qa/suites/krbd/rbd/clusters/.qa1
l---------qa/suites/krbd/rbd/clusters/fixed-3.yaml1
-rw-r--r--qa/suites/krbd/rbd/conf.yaml7
l---------qa/suites/krbd/rbd/ms_mode/.qa1
-rw-r--r--qa/suites/krbd/rbd/ms_mode/crc.yaml5
-rw-r--r--qa/suites/krbd/rbd/ms_mode/legacy.yaml5
-rw-r--r--qa/suites/krbd/rbd/ms_mode/secure.yaml5
l---------qa/suites/krbd/rbd/msgr-failures/.qa1
-rw-r--r--qa/suites/krbd/rbd/msgr-failures/few.yaml7
-rw-r--r--qa/suites/krbd/rbd/msgr-failures/many.yaml7
l---------qa/suites/krbd/rbd/tasks/.qa1
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_fio.yaml11
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_kernel_untar_build.yaml12
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_suites_dbench.yaml9
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_suites_ffsb.yaml10
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress.yaml9
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress_ext4.yaml10
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsx.yaml9
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_suites_iozone.yaml10
-rw-r--r--qa/suites/krbd/rbd/tasks/rbd_workunit_trivial_sync.yaml8
-rw-r--r--qa/suites/krbd/singleton/%0
l---------qa/suites/krbd/singleton/.qa1
l---------qa/suites/krbd/singleton/bluestore-bitmap.yaml1
-rw-r--r--qa/suites/krbd/singleton/conf.yaml7
l---------qa/suites/krbd/singleton/ms_mode$/.qa1
-rw-r--r--qa/suites/krbd/singleton/ms_mode$/crc.yaml5
-rw-r--r--qa/suites/krbd/singleton/ms_mode$/legacy.yaml5
-rw-r--r--qa/suites/krbd/singleton/ms_mode$/prefer-crc.yaml5
-rw-r--r--qa/suites/krbd/singleton/ms_mode$/secure.yaml5
l---------qa/suites/krbd/singleton/msgr-failures/.qa1
-rw-r--r--qa/suites/krbd/singleton/msgr-failures/few.yaml7
-rw-r--r--qa/suites/krbd/singleton/msgr-failures/many.yaml7
l---------qa/suites/krbd/singleton/tasks/.qa1
-rw-r--r--qa/suites/krbd/singleton/tasks/rbd_xfstests.yaml38
-rw-r--r--qa/suites/krbd/thrash/%0
l---------qa/suites/krbd/thrash/.qa1
l---------qa/suites/krbd/thrash/bluestore-bitmap.yaml1
l---------qa/suites/krbd/thrash/ceph/.qa1
-rw-r--r--qa/suites/krbd/thrash/ceph/ceph.yaml3
l---------qa/suites/krbd/thrash/clusters/.qa1
l---------qa/suites/krbd/thrash/clusters/fixed-3.yaml1
-rw-r--r--qa/suites/krbd/thrash/conf.yaml7
l---------qa/suites/krbd/thrash/ms_mode$/.qa1
-rw-r--r--qa/suites/krbd/thrash/ms_mode$/crc.yaml5
-rw-r--r--qa/suites/krbd/thrash/ms_mode$/legacy.yaml5
-rw-r--r--qa/suites/krbd/thrash/ms_mode$/prefer-crc.yaml5
-rw-r--r--qa/suites/krbd/thrash/ms_mode$/secure.yaml5
l---------qa/suites/krbd/thrash/thrashers/.qa1
-rw-r--r--qa/suites/krbd/thrash/thrashers/backoff.yaml15
-rw-r--r--qa/suites/krbd/thrash/thrashers/mon-thrasher.yaml8
-rw-r--r--qa/suites/krbd/thrash/thrashers/pggrow.yaml10
-rw-r--r--qa/suites/krbd/thrash/thrashers/upmap.yaml17
l---------qa/suites/krbd/thrash/thrashosds-health.yaml1
l---------qa/suites/krbd/thrash/workloads/.qa1
-rw-r--r--qa/suites/krbd/thrash/workloads/rbd_fio.yaml11
-rw-r--r--qa/suites/krbd/thrash/workloads/rbd_workunit_suites_ffsb.yaml8
-rw-r--r--qa/suites/krbd/unmap/%0
l---------qa/suites/krbd/unmap/.qa1
l---------qa/suites/krbd/unmap/ceph/.qa1
-rw-r--r--qa/suites/krbd/unmap/ceph/ceph.yaml14
l---------qa/suites/krbd/unmap/clusters/.qa1
-rw-r--r--qa/suites/krbd/unmap/clusters/separate-client.yaml16
-rw-r--r--qa/suites/krbd/unmap/conf.yaml5
l---------qa/suites/krbd/unmap/filestore-xfs.yaml1
l---------qa/suites/krbd/unmap/kernels/.qa1
-rw-r--r--qa/suites/krbd/unmap/kernels/pre-single-major.yaml10
-rw-r--r--qa/suites/krbd/unmap/kernels/single-major-off.yaml6
-rw-r--r--qa/suites/krbd/unmap/kernels/single-major-on.yaml6
l---------qa/suites/krbd/unmap/tasks/.qa1
-rw-r--r--qa/suites/krbd/unmap/tasks/unmap.yaml5
l---------qa/suites/krbd/wac/.qa1
-rw-r--r--qa/suites/krbd/wac/sysfs/%0
l---------qa/suites/krbd/wac/sysfs/.qa1
l---------qa/suites/krbd/wac/sysfs/bluestore-bitmap.yaml1
l---------qa/suites/krbd/wac/sysfs/ceph/.qa1
-rw-r--r--qa/suites/krbd/wac/sysfs/ceph/ceph.yaml3
l---------qa/suites/krbd/wac/sysfs/clusters/.qa1
l---------qa/suites/krbd/wac/sysfs/clusters/fixed-1.yaml1
-rw-r--r--qa/suites/krbd/wac/sysfs/conf.yaml7
l---------qa/suites/krbd/wac/sysfs/tasks/.qa1
-rw-r--r--qa/suites/krbd/wac/sysfs/tasks/stable_writes.yaml5
-rw-r--r--qa/suites/krbd/wac/wac/%0
l---------qa/suites/krbd/wac/wac/.qa1
l---------qa/suites/krbd/wac/wac/bluestore-bitmap.yaml1
l---------qa/suites/krbd/wac/wac/ceph/.qa1
-rw-r--r--qa/suites/krbd/wac/wac/ceph/ceph.yaml3
l---------qa/suites/krbd/wac/wac/clusters/.qa1
l---------qa/suites/krbd/wac/wac/clusters/fixed-3.yaml1
-rw-r--r--qa/suites/krbd/wac/wac/conf.yaml7
l---------qa/suites/krbd/wac/wac/tasks/.qa1
-rw-r--r--qa/suites/krbd/wac/wac/tasks/wac.yaml11
l---------qa/suites/krbd/wac/wac/verify/.qa1
-rw-r--r--qa/suites/krbd/wac/wac/verify/many-resets.yaml12
-rw-r--r--qa/suites/krbd/wac/wac/verify/no-resets.yaml5
180 files changed, 781 insertions, 0 deletions
diff --git a/qa/suites/krbd/.qa b/qa/suites/krbd/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/basic/% b/qa/suites/krbd/basic/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/basic/%
diff --git a/qa/suites/krbd/basic/.qa b/qa/suites/krbd/basic/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/basic/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/basic/bluestore-bitmap.yaml b/qa/suites/krbd/basic/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/basic/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/basic/ceph/.qa b/qa/suites/krbd/basic/ceph/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/basic/ceph/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/basic/ceph/ceph.yaml b/qa/suites/krbd/basic/ceph/ceph.yaml
new file mode 100644
index 00000000..2030acb9
--- /dev/null
+++ b/qa/suites/krbd/basic/ceph/ceph.yaml
@@ -0,0 +1,3 @@
+tasks:
+- install:
+- ceph:
diff --git a/qa/suites/krbd/basic/clusters/.qa b/qa/suites/krbd/basic/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/basic/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/basic/clusters/fixed-1.yaml b/qa/suites/krbd/basic/clusters/fixed-1.yaml
new file mode 120000
index 00000000..02df5dd0
--- /dev/null
+++ b/qa/suites/krbd/basic/clusters/fixed-1.yaml
@@ -0,0 +1 @@
+.qa/clusters/fixed-1.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/basic/conf.yaml b/qa/suites/krbd/basic/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/basic/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/basic/ms_mode/.qa b/qa/suites/krbd/basic/ms_mode/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/basic/ms_mode/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/basic/ms_mode/crc.yaml b/qa/suites/krbd/basic/ms_mode/crc.yaml
new file mode 100644
index 00000000..3b072578
--- /dev/null
+++ b/qa/suites/krbd/basic/ms_mode/crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=crc
diff --git a/qa/suites/krbd/basic/ms_mode/legacy.yaml b/qa/suites/krbd/basic/ms_mode/legacy.yaml
new file mode 100644
index 00000000..0048dcb0
--- /dev/null
+++ b/qa/suites/krbd/basic/ms_mode/legacy.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=legacy
diff --git a/qa/suites/krbd/basic/ms_mode/secure.yaml b/qa/suites/krbd/basic/ms_mode/secure.yaml
new file mode 100644
index 00000000..a735db18
--- /dev/null
+++ b/qa/suites/krbd/basic/ms_mode/secure.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=secure
diff --git a/qa/suites/krbd/basic/tasks/.qa b/qa/suites/krbd/basic/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/basic/tasks/krbd_deep_flatten.yaml b/qa/suites/krbd/basic/tasks/krbd_deep_flatten.yaml
new file mode 100644
index 00000000..a821b73a
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_deep_flatten.yaml
@@ -0,0 +1,5 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_deep_flatten.t
diff --git a/qa/suites/krbd/basic/tasks/krbd_discard.yaml b/qa/suites/krbd/basic/tasks/krbd_discard.yaml
new file mode 100644
index 00000000..59ec5b94
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_discard.yaml
@@ -0,0 +1,9 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_discard.t
+ - qa/rbd/krbd_discard_512b.t
+ - qa/rbd/krbd_discard_4M.t
+ - qa/rbd/krbd_zeroout.t
+ - qa/rbd/krbd_discard_granularity.t
diff --git a/qa/suites/krbd/basic/tasks/krbd_huge_image.yaml b/qa/suites/krbd/basic/tasks/krbd_huge_image.yaml
new file mode 100644
index 00000000..15ff033c
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_huge_image.yaml
@@ -0,0 +1,5 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_huge_image.t
diff --git a/qa/suites/krbd/basic/tasks/krbd_msgr_segments.yaml b/qa/suites/krbd/basic/tasks/krbd_msgr_segments.yaml
new file mode 100644
index 00000000..cfa524e7
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_msgr_segments.yaml
@@ -0,0 +1,5 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_msgr_segments.t
diff --git a/qa/suites/krbd/basic/tasks/krbd_parent_overlap.yaml b/qa/suites/krbd/basic/tasks/krbd_parent_overlap.yaml
new file mode 100644
index 00000000..9bcf1fa3
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_parent_overlap.yaml
@@ -0,0 +1,5 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_parent_overlap.t
diff --git a/qa/suites/krbd/basic/tasks/krbd_read_only.yaml b/qa/suites/krbd/basic/tasks/krbd_read_only.yaml
new file mode 100644
index 00000000..8194b89c
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_read_only.yaml
@@ -0,0 +1,6 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_blkroset.t
+ - qa/rbd/krbd_get_features.t
diff --git a/qa/suites/krbd/basic/tasks/krbd_whole_object_zeroout.yaml b/qa/suites/krbd/basic/tasks/krbd_whole_object_zeroout.yaml
new file mode 100644
index 00000000..3b0ff8d1
--- /dev/null
+++ b/qa/suites/krbd/basic/tasks/krbd_whole_object_zeroout.yaml
@@ -0,0 +1,5 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - qa/rbd/krbd_whole_object_zeroout.t
diff --git a/qa/suites/krbd/fsx/% b/qa/suites/krbd/fsx/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/fsx/%
diff --git a/qa/suites/krbd/fsx/.qa b/qa/suites/krbd/fsx/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/ceph/.qa b/qa/suites/krbd/fsx/ceph/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/ceph/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/ceph/ceph.yaml b/qa/suites/krbd/fsx/ceph/ceph.yaml
new file mode 100644
index 00000000..2030acb9
--- /dev/null
+++ b/qa/suites/krbd/fsx/ceph/ceph.yaml
@@ -0,0 +1,3 @@
+tasks:
+- install:
+- ceph:
diff --git a/qa/suites/krbd/fsx/clusters/.qa b/qa/suites/krbd/fsx/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/clusters/3-node.yaml b/qa/suites/krbd/fsx/clusters/3-node.yaml
new file mode 100644
index 00000000..0433ec9b
--- /dev/null
+++ b/qa/suites/krbd/fsx/clusters/3-node.yaml
@@ -0,0 +1,14 @@
+# fixed-3.yaml, but with two additional clients on the same target
+roles:
+- [mon.a, mon.c, mgr.x, osd.0, osd.1, osd.2, osd.3]
+- [mon.b, mgr.y, osd.4, osd.5, osd.6, osd.7]
+- [client.0, client.1, client.2]
+openstack:
+- volumes: # attached to each instance
+ count: 4
+ size: 10 # GB
+overrides:
+ ceph:
+ conf:
+ osd:
+ osd shutdown pgref assert: true
diff --git a/qa/suites/krbd/fsx/conf.yaml b/qa/suites/krbd/fsx/conf.yaml
new file mode 100644
index 00000000..30da870b
--- /dev/null
+++ b/qa/suites/krbd/fsx/conf.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
diff --git a/qa/suites/krbd/fsx/ms_mode$/.qa b/qa/suites/krbd/fsx/ms_mode$/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/ms_mode$/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/ms_mode$/crc.yaml b/qa/suites/krbd/fsx/ms_mode$/crc.yaml
new file mode 100644
index 00000000..3b072578
--- /dev/null
+++ b/qa/suites/krbd/fsx/ms_mode$/crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=crc
diff --git a/qa/suites/krbd/fsx/ms_mode$/legacy.yaml b/qa/suites/krbd/fsx/ms_mode$/legacy.yaml
new file mode 100644
index 00000000..0048dcb0
--- /dev/null
+++ b/qa/suites/krbd/fsx/ms_mode$/legacy.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=legacy
diff --git a/qa/suites/krbd/fsx/ms_mode$/prefer-crc.yaml b/qa/suites/krbd/fsx/ms_mode$/prefer-crc.yaml
new file mode 100644
index 00000000..1054473a
--- /dev/null
+++ b/qa/suites/krbd/fsx/ms_mode$/prefer-crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=prefer-crc
diff --git a/qa/suites/krbd/fsx/ms_mode$/secure.yaml b/qa/suites/krbd/fsx/ms_mode$/secure.yaml
new file mode 100644
index 00000000..a735db18
--- /dev/null
+++ b/qa/suites/krbd/fsx/ms_mode$/secure.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=secure
diff --git a/qa/suites/krbd/fsx/objectstore/.qa b/qa/suites/krbd/fsx/objectstore/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/objectstore/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/objectstore/bluestore-bitmap.yaml b/qa/suites/krbd/fsx/objectstore/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/fsx/objectstore/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/objectstore/filestore-xfs.yaml b/qa/suites/krbd/fsx/objectstore/filestore-xfs.yaml
new file mode 120000
index 00000000..41f2a9d1
--- /dev/null
+++ b/qa/suites/krbd/fsx/objectstore/filestore-xfs.yaml
@@ -0,0 +1 @@
+.qa/objectstore/filestore-xfs.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/striping/.qa b/qa/suites/krbd/fsx/striping/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/striping/default/% b/qa/suites/krbd/fsx/striping/default/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/default/%
diff --git a/qa/suites/krbd/fsx/striping/default/.qa b/qa/suites/krbd/fsx/striping/default/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/default/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/striping/default/msgr-failures/.qa b/qa/suites/krbd/fsx/striping/default/msgr-failures/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/default/msgr-failures/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/striping/default/msgr-failures/few.yaml b/qa/suites/krbd/fsx/striping/default/msgr-failures/few.yaml
new file mode 100644
index 00000000..4326fe23
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/default/msgr-failures/few.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 5000
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/fsx/striping/default/msgr-failures/many.yaml b/qa/suites/krbd/fsx/striping/default/msgr-failures/many.yaml
new file mode 100644
index 00000000..4caedaeb
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/default/msgr-failures/many.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 500
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/fsx/striping/default/randomized-striping-off.yaml b/qa/suites/krbd/fsx/striping/default/randomized-striping-off.yaml
new file mode 100644
index 00000000..0bf96a8d
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/default/randomized-striping-off.yaml
@@ -0,0 +1,3 @@
+overrides:
+ rbd_fsx:
+ randomized_striping: false
diff --git a/qa/suites/krbd/fsx/striping/fancy/% b/qa/suites/krbd/fsx/striping/fancy/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/fancy/%
diff --git a/qa/suites/krbd/fsx/striping/fancy/.qa b/qa/suites/krbd/fsx/striping/fancy/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/fancy/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/striping/fancy/msgr-failures/.qa b/qa/suites/krbd/fsx/striping/fancy/msgr-failures/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/fancy/msgr-failures/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/striping/fancy/msgr-failures/few.yaml b/qa/suites/krbd/fsx/striping/fancy/msgr-failures/few.yaml
new file mode 100644
index 00000000..4326fe23
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/fancy/msgr-failures/few.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 5000
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/fsx/striping/fancy/randomized-striping-on.yaml b/qa/suites/krbd/fsx/striping/fancy/randomized-striping-on.yaml
new file mode 100644
index 00000000..c2823e4e
--- /dev/null
+++ b/qa/suites/krbd/fsx/striping/fancy/randomized-striping-on.yaml
@@ -0,0 +1,3 @@
+overrides:
+ rbd_fsx:
+ randomized_striping: true
diff --git a/qa/suites/krbd/fsx/tasks/.qa b/qa/suites/krbd/fsx/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/fsx/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/fsx/tasks/fsx-1-client.yaml b/qa/suites/krbd/fsx/tasks/fsx-1-client.yaml
new file mode 100644
index 00000000..b0af9829
--- /dev/null
+++ b/qa/suites/krbd/fsx/tasks/fsx-1-client.yaml
@@ -0,0 +1,10 @@
+tasks:
+- rbd_fsx:
+ clients: [client.0]
+ ops: 20000
+ krbd: true
+ readbdy: 512
+ writebdy: 512
+ truncbdy: 512
+ holebdy: 512
+ punch_holes: true
diff --git a/qa/suites/krbd/fsx/tasks/fsx-3-client.yaml b/qa/suites/krbd/fsx/tasks/fsx-3-client.yaml
new file mode 100644
index 00000000..5b8e3701
--- /dev/null
+++ b/qa/suites/krbd/fsx/tasks/fsx-3-client.yaml
@@ -0,0 +1,10 @@
+tasks:
+- rbd_fsx:
+ clients: [client.0, client.1, client.2]
+ ops: 10000
+ krbd: true
+ readbdy: 512
+ writebdy: 512
+ truncbdy: 512
+ holebdy: 512
+ punch_holes: true
diff --git a/qa/suites/krbd/rbd-nomount/% b/qa/suites/krbd/rbd-nomount/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/%
diff --git a/qa/suites/krbd/rbd-nomount/.qa b/qa/suites/krbd/rbd-nomount/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/bluestore-bitmap.yaml b/qa/suites/krbd/rbd-nomount/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/clusters/.qa b/qa/suites/krbd/rbd-nomount/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/clusters/fixed-3.yaml b/qa/suites/krbd/rbd-nomount/clusters/fixed-3.yaml
new file mode 120000
index 00000000..f75a848b
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/clusters/fixed-3.yaml
@@ -0,0 +1 @@
+.qa/clusters/fixed-3.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/conf.yaml b/qa/suites/krbd/rbd-nomount/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/rbd-nomount/install/.qa b/qa/suites/krbd/rbd-nomount/install/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/install/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/install/ceph.yaml b/qa/suites/krbd/rbd-nomount/install/ceph.yaml
new file mode 100644
index 00000000..2030acb9
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/install/ceph.yaml
@@ -0,0 +1,3 @@
+tasks:
+- install:
+- ceph:
diff --git a/qa/suites/krbd/rbd-nomount/ms_mode/.qa b/qa/suites/krbd/rbd-nomount/ms_mode/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/ms_mode/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/ms_mode/crc.yaml b/qa/suites/krbd/rbd-nomount/ms_mode/crc.yaml
new file mode 100644
index 00000000..3b072578
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/ms_mode/crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=crc
diff --git a/qa/suites/krbd/rbd-nomount/ms_mode/legacy.yaml b/qa/suites/krbd/rbd-nomount/ms_mode/legacy.yaml
new file mode 100644
index 00000000..0048dcb0
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/ms_mode/legacy.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=legacy
diff --git a/qa/suites/krbd/rbd-nomount/ms_mode/secure.yaml b/qa/suites/krbd/rbd-nomount/ms_mode/secure.yaml
new file mode 100644
index 00000000..a735db18
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/ms_mode/secure.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=secure
diff --git a/qa/suites/krbd/rbd-nomount/msgr-failures/.qa b/qa/suites/krbd/rbd-nomount/msgr-failures/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/msgr-failures/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/msgr-failures/few.yaml b/qa/suites/krbd/rbd-nomount/msgr-failures/few.yaml
new file mode 100644
index 00000000..4326fe23
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/msgr-failures/few.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 5000
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/rbd-nomount/msgr-failures/many.yaml b/qa/suites/krbd/rbd-nomount/msgr-failures/many.yaml
new file mode 100644
index 00000000..4caedaeb
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/msgr-failures/many.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 500
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/rbd-nomount/tasks/.qa b/qa/suites/krbd/rbd-nomount/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_data_pool.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_data_pool.yaml
new file mode 100644
index 00000000..35b9d67e
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_data_pool.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_data_pool.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_exclusive_option.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_exclusive_option.yaml
new file mode 100644
index 00000000..567deebf
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_exclusive_option.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_exclusive_option.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_fallocate.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_fallocate.yaml
new file mode 100644
index 00000000..a7286982
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_fallocate.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_fallocate.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_latest_osdmap_on_map.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_latest_osdmap_on_map.yaml
new file mode 100644
index 00000000..522be6a4
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_latest_osdmap_on_map.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_latest_osdmap_on_map.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_namespaces.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_namespaces.yaml
new file mode 100644
index 00000000..4d6519a2
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_namespaces.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_namespaces.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_enumerate.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_enumerate.yaml
new file mode 100644
index 00000000..c326507a
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_enumerate.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_udev_enumerate.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netlink_enobufs.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netlink_enobufs.yaml
new file mode 100644
index 00000000..b0530d52
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netlink_enobufs.yaml
@@ -0,0 +1,10 @@
+overrides:
+ ceph:
+ log-whitelist:
+ - pauserd,pausewr flag\(s\) set
+
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_udev_netlink_enobufs.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netns.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netns.yaml
new file mode 100644
index 00000000..21e06e38
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_netns.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_udev_netns.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_symlinks.yaml b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_symlinks.yaml
new file mode 100644
index 00000000..ee79932f
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/krbd_udev_symlinks.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_udev_symlinks.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_concurrent.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_concurrent.yaml
new file mode 100644
index 00000000..675b98e7
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_concurrent.yaml
@@ -0,0 +1,10 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/concurrent.sh
+# Options for rbd/concurrent.sh (default values shown)
+# env:
+# RBD_CONCURRENT_ITER: 100
+# RBD_CONCURRENT_COUNT: 5
+# RBD_CONCURRENT_DELAY: 5
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_huge_tickets.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_huge_tickets.yaml
new file mode 100644
index 00000000..ea421eec
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_huge_tickets.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/huge-tickets.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_image_read.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_image_read.yaml
new file mode 100644
index 00000000..e5017e11
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_image_read.yaml
@@ -0,0 +1,15 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/image_read.sh
+# Options for rbd/image_read.sh (default values shown)
+# env:
+# IMAGE_READ_LOCAL_FILES: 'false'
+# IMAGE_READ_FORMAT: '2'
+# IMAGE_READ_VERBOSE: 'true'
+# IMAGE_READ_PAGE_SIZE: '4096'
+# IMAGE_READ_OBJECT_ORDER: '22'
+# IMAGE_READ_TEST_CLONES: 'true'
+# IMAGE_READ_DOUBLE_ORDER: 'true'
+# IMAGE_READ_HALF_ORDER: 'false'
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_kernel.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_kernel.yaml
new file mode 100644
index 00000000..aa155827
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_kernel.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/kernel.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_map_snapshot_io.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_map_snapshot_io.yaml
new file mode 100644
index 00000000..c1529398
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_map_snapshot_io.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/map-snapshot-io.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_map_unmap.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_map_unmap.yaml
new file mode 100644
index 00000000..c2160997
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_map_unmap.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/map-unmap.sh
diff --git a/qa/suites/krbd/rbd-nomount/tasks/rbd_simple_big.yaml b/qa/suites/krbd/rbd-nomount/tasks/rbd_simple_big.yaml
new file mode 100644
index 00000000..c493cfaf
--- /dev/null
+++ b/qa/suites/krbd/rbd-nomount/tasks/rbd_simple_big.yaml
@@ -0,0 +1,6 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/simple_big.sh
+
diff --git a/qa/suites/krbd/rbd/% b/qa/suites/krbd/rbd/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/rbd/%
diff --git a/qa/suites/krbd/rbd/.qa b/qa/suites/krbd/rbd/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/bluestore-bitmap.yaml b/qa/suites/krbd/rbd/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/rbd/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/clusters/.qa b/qa/suites/krbd/rbd/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/clusters/fixed-3.yaml b/qa/suites/krbd/rbd/clusters/fixed-3.yaml
new file mode 120000
index 00000000..f75a848b
--- /dev/null
+++ b/qa/suites/krbd/rbd/clusters/fixed-3.yaml
@@ -0,0 +1 @@
+.qa/clusters/fixed-3.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/conf.yaml b/qa/suites/krbd/rbd/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/rbd/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/rbd/ms_mode/.qa b/qa/suites/krbd/rbd/ms_mode/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd/ms_mode/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/ms_mode/crc.yaml b/qa/suites/krbd/rbd/ms_mode/crc.yaml
new file mode 100644
index 00000000..3b072578
--- /dev/null
+++ b/qa/suites/krbd/rbd/ms_mode/crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=crc
diff --git a/qa/suites/krbd/rbd/ms_mode/legacy.yaml b/qa/suites/krbd/rbd/ms_mode/legacy.yaml
new file mode 100644
index 00000000..0048dcb0
--- /dev/null
+++ b/qa/suites/krbd/rbd/ms_mode/legacy.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=legacy
diff --git a/qa/suites/krbd/rbd/ms_mode/secure.yaml b/qa/suites/krbd/rbd/ms_mode/secure.yaml
new file mode 100644
index 00000000..a735db18
--- /dev/null
+++ b/qa/suites/krbd/rbd/ms_mode/secure.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=secure
diff --git a/qa/suites/krbd/rbd/msgr-failures/.qa b/qa/suites/krbd/rbd/msgr-failures/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd/msgr-failures/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/msgr-failures/few.yaml b/qa/suites/krbd/rbd/msgr-failures/few.yaml
new file mode 100644
index 00000000..4326fe23
--- /dev/null
+++ b/qa/suites/krbd/rbd/msgr-failures/few.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 5000
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/rbd/msgr-failures/many.yaml b/qa/suites/krbd/rbd/msgr-failures/many.yaml
new file mode 100644
index 00000000..4caedaeb
--- /dev/null
+++ b/qa/suites/krbd/rbd/msgr-failures/many.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 500
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/rbd/tasks/.qa b/qa/suites/krbd/rbd/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/rbd/tasks/rbd_fio.yaml b/qa/suites/krbd/rbd/tasks/rbd_fio.yaml
new file mode 100644
index 00000000..01088fa4
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_fio.yaml
@@ -0,0 +1,11 @@
+tasks:
+- install:
+- ceph: null
+- rbd_fio:
+ client.0:
+ fio-io-size: 90%
+ formats: [2]
+ features: [[layering,exclusive-lock]]
+ io-engine: sync
+ rw: randrw
+ runtime: 900
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_kernel_untar_build.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_kernel_untar_build.yaml
new file mode 100644
index 00000000..699cde82
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_kernel_untar_build.yaml
@@ -0,0 +1,12 @@
+tasks:
+- install:
+ extra_system_packages:
+ deb: ['bison', 'flex', 'libelf-dev', 'libssl-dev']
+ rpm: ['bison', 'flex', 'elfutils-libelf-devel', 'openssl-devel']
+- ceph:
+- rbd:
+ all:
+- workunit:
+ clients:
+ all:
+ - kernel_untar_build.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_dbench.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_dbench.yaml
new file mode 100644
index 00000000..d779eea2
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_dbench.yaml
@@ -0,0 +1,9 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ clients:
+ all:
+ - suites/dbench.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_ffsb.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_ffsb.yaml
new file mode 100644
index 00000000..5204bb87
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_ffsb.yaml
@@ -0,0 +1,10 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+ image_size: 20480
+- workunit:
+ clients:
+ all:
+ - suites/ffsb.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress.yaml
new file mode 100644
index 00000000..f9d62fef
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress.yaml
@@ -0,0 +1,9 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ clients:
+ all:
+ - suites/fsstress.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress_ext4.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress_ext4.yaml
new file mode 100644
index 00000000..f765b74a
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsstress_ext4.yaml
@@ -0,0 +1,10 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+ fs_type: ext4
+- workunit:
+ clients:
+ all:
+ - suites/fsstress.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsx.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsx.yaml
new file mode 100644
index 00000000..98c0849c
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_fsx.yaml
@@ -0,0 +1,9 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ clients:
+ all:
+ - suites/fsx.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_iozone.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_iozone.yaml
new file mode 100644
index 00000000..eb8f18d6
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_suites_iozone.yaml
@@ -0,0 +1,10 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+ image_size: 20480
+- workunit:
+ clients:
+ all:
+ - suites/iozone.sh
diff --git a/qa/suites/krbd/rbd/tasks/rbd_workunit_trivial_sync.yaml b/qa/suites/krbd/rbd/tasks/rbd_workunit_trivial_sync.yaml
new file mode 100644
index 00000000..7c2796b2
--- /dev/null
+++ b/qa/suites/krbd/rbd/tasks/rbd_workunit_trivial_sync.yaml
@@ -0,0 +1,8 @@
+tasks:
+- install:
+- ceph:
+- rbd:
+ all:
+- workunit:
+ clients:
+ all: [fs/misc/trivial_sync.sh]
diff --git a/qa/suites/krbd/singleton/% b/qa/suites/krbd/singleton/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/singleton/%
diff --git a/qa/suites/krbd/singleton/.qa b/qa/suites/krbd/singleton/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/singleton/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/singleton/bluestore-bitmap.yaml b/qa/suites/krbd/singleton/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/singleton/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/singleton/conf.yaml b/qa/suites/krbd/singleton/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/singleton/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/singleton/ms_mode$/.qa b/qa/suites/krbd/singleton/ms_mode$/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/singleton/ms_mode$/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/singleton/ms_mode$/crc.yaml b/qa/suites/krbd/singleton/ms_mode$/crc.yaml
new file mode 100644
index 00000000..3b072578
--- /dev/null
+++ b/qa/suites/krbd/singleton/ms_mode$/crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=crc
diff --git a/qa/suites/krbd/singleton/ms_mode$/legacy.yaml b/qa/suites/krbd/singleton/ms_mode$/legacy.yaml
new file mode 100644
index 00000000..0048dcb0
--- /dev/null
+++ b/qa/suites/krbd/singleton/ms_mode$/legacy.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=legacy
diff --git a/qa/suites/krbd/singleton/ms_mode$/prefer-crc.yaml b/qa/suites/krbd/singleton/ms_mode$/prefer-crc.yaml
new file mode 100644
index 00000000..1054473a
--- /dev/null
+++ b/qa/suites/krbd/singleton/ms_mode$/prefer-crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=prefer-crc
diff --git a/qa/suites/krbd/singleton/ms_mode$/secure.yaml b/qa/suites/krbd/singleton/ms_mode$/secure.yaml
new file mode 100644
index 00000000..a735db18
--- /dev/null
+++ b/qa/suites/krbd/singleton/ms_mode$/secure.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=secure
diff --git a/qa/suites/krbd/singleton/msgr-failures/.qa b/qa/suites/krbd/singleton/msgr-failures/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/singleton/msgr-failures/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/singleton/msgr-failures/few.yaml b/qa/suites/krbd/singleton/msgr-failures/few.yaml
new file mode 100644
index 00000000..4326fe23
--- /dev/null
+++ b/qa/suites/krbd/singleton/msgr-failures/few.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 5000
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/singleton/msgr-failures/many.yaml b/qa/suites/krbd/singleton/msgr-failures/many.yaml
new file mode 100644
index 00000000..4caedaeb
--- /dev/null
+++ b/qa/suites/krbd/singleton/msgr-failures/many.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 500
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
diff --git a/qa/suites/krbd/singleton/tasks/.qa b/qa/suites/krbd/singleton/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/singleton/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/singleton/tasks/rbd_xfstests.yaml b/qa/suites/krbd/singleton/tasks/rbd_xfstests.yaml
new file mode 100644
index 00000000..c94af020
--- /dev/null
+++ b/qa/suites/krbd/singleton/tasks/rbd_xfstests.yaml
@@ -0,0 +1,38 @@
+roles:
+- [mon.a, mon.c, osd.0, osd.1, osd.2]
+- [mon.b, mgr.x, mds.a, osd.3, osd.4, osd.5]
+- [client.0]
+- [client.1]
+openstack:
+- volumes: # attached to each instance
+ count: 3
+ size: 10 # GB
+tasks:
+- install:
+- ceph:
+- rbd.xfstests:
+ client.0: &ref
+ test_image: 'test_image-0'
+ test_size: 5120 # MB
+ scratch_image: 'scratch_image-0'
+ scratch_size: 15360 # MB
+ fs_type: ext4
+ tests: '-g auto -g blockdev -x clone'
+ exclude:
+ - generic/042
+ - generic/392
+ - generic/044
+ - generic/045
+ - generic/046
+ - generic/223
+ - ext4/002 # removed upstream
+ - ext4/304
+ - generic/388
+ - generic/405
+ - generic/422
+ - shared/298 # lockdep false positive
+ randomize: true
+ client.1:
+ <<: *ref
+ test_image: 'test_image-1'
+ scratch_image: 'scratch_image-1'
diff --git a/qa/suites/krbd/thrash/% b/qa/suites/krbd/thrash/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/thrash/%
diff --git a/qa/suites/krbd/thrash/.qa b/qa/suites/krbd/thrash/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/thrash/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/bluestore-bitmap.yaml b/qa/suites/krbd/thrash/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/thrash/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/ceph/.qa b/qa/suites/krbd/thrash/ceph/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/thrash/ceph/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/ceph/ceph.yaml b/qa/suites/krbd/thrash/ceph/ceph.yaml
new file mode 100644
index 00000000..2030acb9
--- /dev/null
+++ b/qa/suites/krbd/thrash/ceph/ceph.yaml
@@ -0,0 +1,3 @@
+tasks:
+- install:
+- ceph:
diff --git a/qa/suites/krbd/thrash/clusters/.qa b/qa/suites/krbd/thrash/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/thrash/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/clusters/fixed-3.yaml b/qa/suites/krbd/thrash/clusters/fixed-3.yaml
new file mode 120000
index 00000000..f75a848b
--- /dev/null
+++ b/qa/suites/krbd/thrash/clusters/fixed-3.yaml
@@ -0,0 +1 @@
+.qa/clusters/fixed-3.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/conf.yaml b/qa/suites/krbd/thrash/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/thrash/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/thrash/ms_mode$/.qa b/qa/suites/krbd/thrash/ms_mode$/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/thrash/ms_mode$/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/ms_mode$/crc.yaml b/qa/suites/krbd/thrash/ms_mode$/crc.yaml
new file mode 100644
index 00000000..3b072578
--- /dev/null
+++ b/qa/suites/krbd/thrash/ms_mode$/crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=crc
diff --git a/qa/suites/krbd/thrash/ms_mode$/legacy.yaml b/qa/suites/krbd/thrash/ms_mode$/legacy.yaml
new file mode 100644
index 00000000..0048dcb0
--- /dev/null
+++ b/qa/suites/krbd/thrash/ms_mode$/legacy.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=legacy
diff --git a/qa/suites/krbd/thrash/ms_mode$/prefer-crc.yaml b/qa/suites/krbd/thrash/ms_mode$/prefer-crc.yaml
new file mode 100644
index 00000000..1054473a
--- /dev/null
+++ b/qa/suites/krbd/thrash/ms_mode$/prefer-crc.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=prefer-crc
diff --git a/qa/suites/krbd/thrash/ms_mode$/secure.yaml b/qa/suites/krbd/thrash/ms_mode$/secure.yaml
new file mode 100644
index 00000000..a735db18
--- /dev/null
+++ b/qa/suites/krbd/thrash/ms_mode$/secure.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default map options: ms_mode=secure
diff --git a/qa/suites/krbd/thrash/thrashers/.qa b/qa/suites/krbd/thrash/thrashers/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/thrash/thrashers/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/thrashers/backoff.yaml b/qa/suites/krbd/thrash/thrashers/backoff.yaml
new file mode 100644
index 00000000..48a7a2a2
--- /dev/null
+++ b/qa/suites/krbd/thrash/thrashers/backoff.yaml
@@ -0,0 +1,15 @@
+overrides:
+ ceph:
+ conf:
+ osd:
+ osd backoff on peering: true
+ osd backoff on degraded: true
+ log-whitelist:
+ - wrongly marked me down
+ - objects unfound and apparently lost
+tasks:
+- thrashosds:
+ timeout: 1200
+ chance_pgnum_grow: 1
+ chance_pgnum_shrink: 1
+ chance_pgpnum_fix: 1
diff --git a/qa/suites/krbd/thrash/thrashers/mon-thrasher.yaml b/qa/suites/krbd/thrash/thrashers/mon-thrasher.yaml
new file mode 100644
index 00000000..415684de
--- /dev/null
+++ b/qa/suites/krbd/thrash/thrashers/mon-thrasher.yaml
@@ -0,0 +1,8 @@
+overrides:
+ ceph:
+ log-whitelist:
+ - \(MON_DOWN\)
+tasks:
+- mon_thrash:
+ revive_delay: 20
+ thrash_delay: 1
diff --git a/qa/suites/krbd/thrash/thrashers/pggrow.yaml b/qa/suites/krbd/thrash/thrashers/pggrow.yaml
new file mode 100644
index 00000000..14346a26
--- /dev/null
+++ b/qa/suites/krbd/thrash/thrashers/pggrow.yaml
@@ -0,0 +1,10 @@
+overrides:
+ ceph:
+ log-whitelist:
+ - but it is still running
+ - objects unfound and apparently lost
+tasks:
+- thrashosds:
+ timeout: 1200
+ chance_pgnum_grow: 2
+ chance_pgpnum_fix: 1
diff --git a/qa/suites/krbd/thrash/thrashers/upmap.yaml b/qa/suites/krbd/thrash/thrashers/upmap.yaml
new file mode 100644
index 00000000..86b51709
--- /dev/null
+++ b/qa/suites/krbd/thrash/thrashers/upmap.yaml
@@ -0,0 +1,17 @@
+overrides:
+ ceph:
+ crush_tunables: optimal
+ conf:
+ mon:
+ mon osd initial require min compat client: luminous
+ log-whitelist:
+ - wrongly marked me down
+ - objects unfound and apparently lost
+tasks:
+- thrashosds:
+ timeout: 1200
+ chance_pgnum_grow: 1
+ chance_pgnum_shrink: 1
+ chance_pgpnum_fix: 1
+ chance_thrash_pg_upmap: 3
+ chance_thrash_pg_upmap_items: 3
diff --git a/qa/suites/krbd/thrash/thrashosds-health.yaml b/qa/suites/krbd/thrash/thrashosds-health.yaml
new file mode 120000
index 00000000..9124eb1a
--- /dev/null
+++ b/qa/suites/krbd/thrash/thrashosds-health.yaml
@@ -0,0 +1 @@
+.qa/tasks/thrashosds-health.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/workloads/.qa b/qa/suites/krbd/thrash/workloads/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/thrash/workloads/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/thrash/workloads/rbd_fio.yaml b/qa/suites/krbd/thrash/workloads/rbd_fio.yaml
new file mode 100644
index 00000000..157210f5
--- /dev/null
+++ b/qa/suites/krbd/thrash/workloads/rbd_fio.yaml
@@ -0,0 +1,11 @@
+tasks:
+- rbd_fio:
+ client.0:
+ fio-io-size: 100%
+ formats: [2]
+ features: [[layering,exclusive-lock]]
+ io-engine: libaio
+ rw: randrw
+ bs: 1024
+ io-depth: 256
+ runtime: 1200
diff --git a/qa/suites/krbd/thrash/workloads/rbd_workunit_suites_ffsb.yaml b/qa/suites/krbd/thrash/workloads/rbd_workunit_suites_ffsb.yaml
new file mode 100644
index 00000000..4ae7d690
--- /dev/null
+++ b/qa/suites/krbd/thrash/workloads/rbd_workunit_suites_ffsb.yaml
@@ -0,0 +1,8 @@
+tasks:
+- rbd:
+ all:
+ image_size: 20480
+- workunit:
+ clients:
+ all:
+ - suites/ffsb.sh
diff --git a/qa/suites/krbd/unmap/% b/qa/suites/krbd/unmap/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/unmap/%
diff --git a/qa/suites/krbd/unmap/.qa b/qa/suites/krbd/unmap/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/unmap/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/unmap/ceph/.qa b/qa/suites/krbd/unmap/ceph/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/unmap/ceph/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/unmap/ceph/ceph.yaml b/qa/suites/krbd/unmap/ceph/ceph.yaml
new file mode 100644
index 00000000..aee5779f
--- /dev/null
+++ b/qa/suites/krbd/unmap/ceph/ceph.yaml
@@ -0,0 +1,14 @@
+overrides:
+ ceph:
+ crush_tunables: bobtail
+ mon_bind_addrvec: false
+ mon_bind_msgr2: false
+ conf:
+ global:
+ ms bind msgr2: false
+tasks:
+- install:
+- ceph:
+- exec:
+ client.0:
+ - "ceph osd getcrushmap -o /dev/stdout | crushtool -d - | sed -e 's/alg straw2/alg straw/g' | crushtool -c /dev/stdin -o /dev/stdout | ceph osd setcrushmap -i /dev/stdin"
diff --git a/qa/suites/krbd/unmap/clusters/.qa b/qa/suites/krbd/unmap/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/unmap/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/unmap/clusters/separate-client.yaml b/qa/suites/krbd/unmap/clusters/separate-client.yaml
new file mode 100644
index 00000000..be134318
--- /dev/null
+++ b/qa/suites/krbd/unmap/clusters/separate-client.yaml
@@ -0,0 +1,16 @@
+# fixed-1.yaml, but with client.0 on a separate target
+overrides:
+ ceph-deploy:
+ conf:
+ global:
+ osd pool default size: 2
+ osd crush chooseleaf type: 0
+ osd pool default pg num: 128
+ osd pool default pgp num: 128
+roles:
+- [mon.a, mgr.x, osd.0, osd.1, osd.2]
+- [client.0]
+openstack:
+- volumes: # attached to each instance
+ count: 3
+ size: 10 # GB
diff --git a/qa/suites/krbd/unmap/conf.yaml b/qa/suites/krbd/unmap/conf.yaml
new file mode 100644
index 00000000..8984e8dc
--- /dev/null
+++ b/qa/suites/krbd/unmap/conf.yaml
@@ -0,0 +1,5 @@
+overrides:
+ ceph:
+ conf:
+ client:
+ rbd default features: 1 # pre-single-major is v3.13, so layering only
diff --git a/qa/suites/krbd/unmap/filestore-xfs.yaml b/qa/suites/krbd/unmap/filestore-xfs.yaml
new file mode 120000
index 00000000..41f2a9d1
--- /dev/null
+++ b/qa/suites/krbd/unmap/filestore-xfs.yaml
@@ -0,0 +1 @@
+.qa/objectstore/filestore-xfs.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/unmap/kernels/.qa b/qa/suites/krbd/unmap/kernels/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/unmap/kernels/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/unmap/kernels/pre-single-major.yaml b/qa/suites/krbd/unmap/kernels/pre-single-major.yaml
new file mode 100644
index 00000000..a5636b45
--- /dev/null
+++ b/qa/suites/krbd/unmap/kernels/pre-single-major.yaml
@@ -0,0 +1,10 @@
+overrides:
+ kernel:
+ client.0:
+ branch: nightly_pre-single-major # v3.12.z
+tasks:
+- exec:
+ client.0:
+ - "modprobe -r rbd"
+ - "modprobe --first-time rbd"
+ - "test ! -f /sys/module/rbd/parameters/single_major"
diff --git a/qa/suites/krbd/unmap/kernels/single-major-off.yaml b/qa/suites/krbd/unmap/kernels/single-major-off.yaml
new file mode 100644
index 00000000..9dc2488e
--- /dev/null
+++ b/qa/suites/krbd/unmap/kernels/single-major-off.yaml
@@ -0,0 +1,6 @@
+tasks:
+- exec:
+ client.0:
+ - "modprobe -r rbd"
+ - "modprobe --first-time rbd single_major=0"
+ - "grep -q N /sys/module/rbd/parameters/single_major"
diff --git a/qa/suites/krbd/unmap/kernels/single-major-on.yaml b/qa/suites/krbd/unmap/kernels/single-major-on.yaml
new file mode 100644
index 00000000..c3889f34
--- /dev/null
+++ b/qa/suites/krbd/unmap/kernels/single-major-on.yaml
@@ -0,0 +1,6 @@
+tasks:
+- exec:
+ client.0:
+ - "modprobe -r rbd"
+ - "modprobe --first-time rbd single_major=1"
+ - "grep -q Y /sys/module/rbd/parameters/single_major"
diff --git a/qa/suites/krbd/unmap/tasks/.qa b/qa/suites/krbd/unmap/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/unmap/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/unmap/tasks/unmap.yaml b/qa/suites/krbd/unmap/tasks/unmap.yaml
new file mode 100644
index 00000000..435061b4
--- /dev/null
+++ b/qa/suites/krbd/unmap/tasks/unmap.yaml
@@ -0,0 +1,5 @@
+tasks:
+- cram:
+ clients:
+ client.0:
+ - src/test/cli-integration/rbd/unmap.t
diff --git a/qa/suites/krbd/wac/.qa b/qa/suites/krbd/wac/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/% b/qa/suites/krbd/wac/sysfs/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/%
diff --git a/qa/suites/krbd/wac/sysfs/.qa b/qa/suites/krbd/wac/sysfs/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/bluestore-bitmap.yaml b/qa/suites/krbd/wac/sysfs/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/ceph/.qa b/qa/suites/krbd/wac/sysfs/ceph/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/ceph/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/ceph/ceph.yaml b/qa/suites/krbd/wac/sysfs/ceph/ceph.yaml
new file mode 100644
index 00000000..2030acb9
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/ceph/ceph.yaml
@@ -0,0 +1,3 @@
+tasks:
+- install:
+- ceph:
diff --git a/qa/suites/krbd/wac/sysfs/clusters/.qa b/qa/suites/krbd/wac/sysfs/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/clusters/fixed-1.yaml b/qa/suites/krbd/wac/sysfs/clusters/fixed-1.yaml
new file mode 120000
index 00000000..02df5dd0
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/clusters/fixed-1.yaml
@@ -0,0 +1 @@
+.qa/clusters/fixed-1.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/conf.yaml b/qa/suites/krbd/wac/sysfs/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/wac/sysfs/tasks/.qa b/qa/suites/krbd/wac/sysfs/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/sysfs/tasks/stable_writes.yaml b/qa/suites/krbd/wac/sysfs/tasks/stable_writes.yaml
new file mode 100644
index 00000000..cd1ba930
--- /dev/null
+++ b/qa/suites/krbd/wac/sysfs/tasks/stable_writes.yaml
@@ -0,0 +1,5 @@
+tasks:
+- workunit:
+ clients:
+ all:
+ - rbd/krbd_stable_writes.sh
diff --git a/qa/suites/krbd/wac/wac/% b/qa/suites/krbd/wac/wac/%
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/%
diff --git a/qa/suites/krbd/wac/wac/.qa b/qa/suites/krbd/wac/wac/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/bluestore-bitmap.yaml b/qa/suites/krbd/wac/wac/bluestore-bitmap.yaml
new file mode 120000
index 00000000..a59cf517
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/bluestore-bitmap.yaml
@@ -0,0 +1 @@
+.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/ceph/.qa b/qa/suites/krbd/wac/wac/ceph/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/ceph/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/ceph/ceph.yaml b/qa/suites/krbd/wac/wac/ceph/ceph.yaml
new file mode 100644
index 00000000..2030acb9
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/ceph/ceph.yaml
@@ -0,0 +1,3 @@
+tasks:
+- install:
+- ceph:
diff --git a/qa/suites/krbd/wac/wac/clusters/.qa b/qa/suites/krbd/wac/wac/clusters/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/clusters/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/clusters/fixed-3.yaml b/qa/suites/krbd/wac/wac/clusters/fixed-3.yaml
new file mode 120000
index 00000000..f75a848b
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/clusters/fixed-3.yaml
@@ -0,0 +1 @@
+.qa/clusters/fixed-3.yaml \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/conf.yaml b/qa/suites/krbd/wac/wac/conf.yaml
new file mode 100644
index 00000000..5e7ed992
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/conf.yaml
@@ -0,0 +1,7 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms die on skipped message: false
+ client:
+ rbd default features: 37
diff --git a/qa/suites/krbd/wac/wac/tasks/.qa b/qa/suites/krbd/wac/wac/tasks/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/tasks/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/tasks/wac.yaml b/qa/suites/krbd/wac/wac/tasks/wac.yaml
new file mode 100644
index 00000000..52dabc38
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/tasks/wac.yaml
@@ -0,0 +1,11 @@
+tasks:
+- exec:
+ client.0:
+ - "dmesg -C"
+- rbd:
+ all:
+ fs_type: ext4
+- workunit:
+ clients:
+ all:
+ - suites/wac.sh
diff --git a/qa/suites/krbd/wac/wac/verify/.qa b/qa/suites/krbd/wac/wac/verify/.qa
new file mode 120000
index 00000000..a602a035
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/verify/.qa
@@ -0,0 +1 @@
+../.qa/ \ No newline at end of file
diff --git a/qa/suites/krbd/wac/wac/verify/many-resets.yaml b/qa/suites/krbd/wac/wac/verify/many-resets.yaml
new file mode 100644
index 00000000..d69f6503
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/verify/many-resets.yaml
@@ -0,0 +1,12 @@
+overrides:
+ ceph:
+ conf:
+ global:
+ ms inject socket failures: 500
+ log-whitelist:
+ - \(OSD_SLOW_PING_TIME
+tasks:
+- exec:
+ client.0:
+ - "dmesg | grep -q 'libceph: osd.* socket closed'"
+ - "dmesg | grep -q 'libceph: osd.* socket error on write'"
diff --git a/qa/suites/krbd/wac/wac/verify/no-resets.yaml b/qa/suites/krbd/wac/wac/verify/no-resets.yaml
new file mode 100644
index 00000000..2728479d
--- /dev/null
+++ b/qa/suites/krbd/wac/wac/verify/no-resets.yaml
@@ -0,0 +1,5 @@
+tasks:
+- exec:
+ client.0:
+ - "! dmesg | grep -q 'libceph: osd.* socket closed'"
+ - "! dmesg | grep -q 'libceph: osd.* socket error on write'"