summaryrefslogtreecommitdiffstats
path: root/tests (follow)
Commit message (Collapse)AuthorAgeFilesLines
* mdadm/tests: judge foreign array in test casesXiao Ni2024-06-205-4/+14
| | | | | | | | | It needs to use array name when judging if one array is foreign or not. So calling is_raid_foreign in test cases which need it. Fixes: 41706a915684 ('mdadm/tests: names_template enhance') Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* test: pass flags to servicesMateusz Kusiak2024-06-181-1/+45
| | | | | | | | | | | | | | | | | | Commit 4c12714d1ca0 ("test: run tests on system level mdadm") removed MDADM_NO_SYSTEMCTL flag from test suite. This causes imsm tests to fail as mdadm no longer triggers mdmon and flags exists only within session. Use systemd set/unset-environment to pass necessary flags. Introduce colors to grab users attention to warnings and key messages. Make test suite setup systemd environment. Add setup/clean_systemd_env() functions. Warn user about altering systemd environment. Add colors to success/fail messages and warnings. Signed-off-by: Mateusz Kusiak <mateusz.kusiak@intel.com>
* mdadm/tests: remove strace testXiao Ni2024-05-282-2/+2
| | | | | | | | Some tests will fail if the test env doesn't have strace commands. So remove the dependency. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 05r1-re-add-nosuperXiao Ni2024-05-281-1/+1
| | | | | | | | Patch 50b100768a11('mdadm: deprecate bitmap custom file') needs to confirm when creating raid device with bitmap file. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 04update-uuidXiao Ni2024-05-281-2/+2
| | | | | | | | Patch 50b100768a11('mdadm: deprecate bitmap custom file') needs to confirm when creating raid device with bitmap file. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: bitmap cases enhanceXiao Ni2024-05-286-64/+48
| | | | | | | | | It fails because bitmap dirty number is smaller than 400 sometimes. It's not good to compare bitmap dirty bits with a number. It depends on the test machine, it can flush soon before checking the number. So remove related codes. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: disable selinuxXiao Ni2024-05-241-0/+10
| | | | | | | | | Sometimes systemd service fails because selinux. Disable selinux during testing now. We can enable it in future when having a better method. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 07changelevelintrXiao Ni2024-05-242-13/+5
| | | | | | | | | | | | It needs to specify a 2 powered array size when updating array size. If not, it can't change chunksize. And sometimes it reports error reshape doesn't happen. In fact the reshape has finished. It doesn't need to wait before checking reshape action. Because check function waits itself. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 07autodetect.broken can be removedXiao Ni2024-05-241-5/+0
| | | | | | | 07autodetect can run successfully without error in kernel 6.9.0-rc5. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 07autoassembleXiao Ni2024-05-242-10/+35
| | | | | | | | | | | | | | | | This test is used to test stacked array auto assemble. There are two different cases depends on if array is foreign or not. If the array is foreign, the stacked array (md0 is on md1 and md2) can't be assembled with name md0. Because udev rule will run when md1 and md2 are assembled and mdadm -I doesn't specify homehost. So it will treat stacked array (md0) as foreign array and choose md127 as the device node name (/dev/md127) Add the case that stacked array is local. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 06name enhanceXiao Ni2024-05-241-2/+8
| | | | | | | | It needs to check hostname in metadata name if one array is local. Add the check in this case. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 05r5-internalbitmapXiao Ni2024-05-241-12/+9
| | | | | | | | | It's not right to compare bitmap bits with a number after io comes. Because maybe those bits are already flused. Remove the related tests. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* tests/04update-metadata skip linearXiao Ni2024-05-242-15/+22
| | | | | | | | Add one check that if kernel doesn't support linear/multipath, it can skip linear/multipath testing. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: remove 04r5swap.brokenXiao Ni2024-05-241-7/+0
| | | | | | | 04r5swap can run successfully with kernel 6.9.0-rc4 Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 03r5assemV1Xiao Ni2024-05-241-17/+0
| | | | | | | | dcc22ae74a864 ('super1: remove support for name= in config') already removes name= support. So remove related test codes in 03r5assemV1. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: remove 03r5assem-failedXiao Ni2024-05-241-12/+0
| | | | | | | 03r5assem can run successfully with kernel 6.9.0-rc4 Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests 03r0assem enhanceXiao Ni2024-05-241-10/+0
| | | | | | | | dcc22ae74a864 ('super1: remove support for name= in config') already removes name= support. So remove related test codes in 03r0assem. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: 03assem-incr enhanceXiao Ni2024-05-241-7/+13
| | | | | | | | | | It fails when hostname lenght > 32. Because the super1 metadata name doesn't include hostname when hostname length > 32. Then mdadm thinks the array is a foreign array if no device link is specified when assembling the array. It chooses a minor number from 127. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: names_template enhanceXiao Ni2024-05-242-2/+25
| | | | | | | | | | | | For super1, if the length of hostname is >= 32, it doesn't add hostname in metadata name. Fix this problem by checking the length of hostname. Because other cases may use need to check this, so do the check in do_setup. And this patch adds a check if link /dev/md/name exists. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: test enhanceXiao Ni2024-05-241-3/+23
| | | | | | | | | | | | | | | | | There are two changes. First, if md module is not loaded, it gives error when reading speed_limit_max. So read the value after loading md module which is done in do_setup Second, sometimes the test reports error sync action doesn't happen. But dmesg shows sync action is done. So limit the sync speed before test. It doesn't affect the test run time. Because check wait sets the max speed before waiting sync action. And recording speed_limit_max/min in do_setup. Fixes: 4c12714d1ca0 ('test: run tests on system level mdadm') Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm: deprecate bitmap custom fileMariusz Tkaczyk2024-05-235-233/+0
| | | | | | | | | | | | | | | | | This option has been deprecated in kernel by Christoph in commit 0ae1c9d38426 ("md: deprecate bitmap file support"). Do the same in mdadm. With this change, user must acknowledge it, it is not skippable. The implementation of custom bitmap file looks like it's abandoned. It cannot be done by Incremental so it is not respected by any udev based system and it seems to not be recorded by metadata. User must assemble such volume manually. Tests for bitmap custom file are removed because now they will not pass because interaction with user is mandatory. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* tests/23rdev-lifetime: fix a typoYu Kuai2024-05-101-1/+1
| | | | | | | | "pill" was wrong, while it should be "kill", test will still pass while test thread will not be cleaned up. Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* tests/01raid6integ.broken can be removedXiao Ni2024-05-081-7/+0
| | | | | | | | 01raid6integ can be run successfully with kernel 6.9.0-rc3. So remove 01raid6integ.broken. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* tests/01r5integ.brokenXiao Ni2024-05-081-7/+0
| | | | | | | | | 01r5integ can be run successfully 152 times without error with kernel 6.9.0-rc4 and mdadm - v4.3-51-g52bead95. So remove this one broken case. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* tests/01r5fail enhanceXiao Ni2024-05-081-5/+1
| | | | | | | | | | | | | | After removing dev0, the recovery starts because it already has a spare disk. It's good to check recovery. But it's not right to check recovery after adding dev3. Because the recovery may finish. It depends on the recovery performance of the testing machine. If the recovery finishes, it will fail. But dev3 is only added as a spare disk, we can't expect there is a recovery happens. So remove the codes about adding dev3. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* test: run tests on system level mdadmMateusz Kusiak2024-02-231-1/+0
| | | | | | | | | | | | | | | | | | | | | | The tests run with MDADM_NO_SYSTEMCTL flag by default, however it has no effect on udev. In case of external metadata, even if flag is set, udev will trigger systemd to launch mdmon. This commit changes test execution level, so the tests are run on system level mdadm, meaning local build must be installed prior to running tests. Add warning that the tests are run on system level mdadm and local build must be installed first. Do not call mdadm with "quiet" as it makes it not display critical messages necessary for debug. Remove forcing speed_limit and add restoring system speed_limit_max after test execution. Signed-off-by: Mateusz Kusiak <mateusz.kusiak@intel.com> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* super1: remove support for name= in configMariusz Tkaczyk2024-02-092-71/+15
| | | | | | | | | | | | | | | | | | | | | | | Only super1 provides "name=" to config. It is recoreded in metadata so there is no need to duplicate same information. UUID is our main key. It is not used by Incremental and Assemble handles empty name well because other supertypes don't set it in conf. Expectation that the name in config is same as in metadata is bug prone. Config should be the place where use can define customized settings. Remove printing "name=" from mdadm config creation commands. Ignore the name in config file to keep backward compatibility. Remove description from man mdadm.conf. Update 00conftest because "name" is no longer accepted. As the name is ignored, error for mdadm --detail is not printed. Reported-by: Stefan Fleischmann <sfle@kth.se> Fixes: e2eb503bd797 ("mdadm: Follow POSIX Portable Character Set") Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* tests: Gate tests for linear flavor with variable LINEARSong Liu2024-01-169-3/+56
| | | | | | | | | | linear flavor is being removed in the kernel [1], so tests for the linear flavor will fail. Add detection for linear flavor and --disable-linear option, with the same logic as multipath. [1] https://lore.kernel.org/linux-raid/20231214222107.2016042-1-song@kernel.org/ Signed-off-by: Song Liu <song@kernel.org> Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
* mdadm/tests: Don't run mknod before losetupXiao Ni2023-10-261-1/+0
| | | | | | | | | | | Sometimes it can fail: losetup: /var/tmp/mdtest0: failed to set up loop device: No such device or address /dev/loop0 and /var/tmp/mdtest0 are already created before losetup. Because losetup can create device node by itself. So remove mknod. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* mdadm/tests: Fix regular expression failureXiao Ni2023-10-261-2/+2
| | | | | | | The test fails because of the regular expression. Signed-off-by: Xiao Ni <xni@redhat.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* mdadm: Follow POSIX Portable Character SetMariusz Tkaczyk2023-10-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the user creates a device with a name that contains whitespace, mdadm timeouts and throws an error. This issue is caused by udev, which truncates /dev/md link until the first whitespace. This patch introduces prohibition of characters other than A-Za-z0-9.-_ in the device name. Also, it prohibits using leading "-" in device name, so name won't be confused with cli parameter. Set of allowed characters is taken from POSIX 3.280 Portable Character Set. Also, device name length now is limited to NAME_MAX. In some places, there are other requirements for string length (e.g. size up to MD_NAME_MAX for device name). This routine is made to follow POSIX and other, more strict limitations should be checked separately. We are aware of the risk of regression in exceptional cases (as escape_devname function is removed) that should be fixed by updating the array name. The POSIX validation is added for: - 'name' parameter in every mode. - first devlist entry, for Build, Create, Assemble, Manage, Grow. - config entries, both devname and "name=". Additionally, some manual cleanups are made. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* mdadm: define ident_set_devname()Mariusz Tkaczyk2023-10-262-0/+10
| | | | | | | | | | | | | | | | | Use dedicated set method for ident->devname. Now, devname validation is done early for modes where device is created (Build, Create and Assemble). The rules, used for devname validation are derived from config file. It could cause regression with execeptional cases where existing device has name which doesn't match criteria for Manage and Grow modes. It is low risk and those modes are not omitted from early devname validation. Use can used main numbered devnode to avoid this problem. Messages exposed to user are changed so it might cause a regression in negative scenarios. Error codes are not changed. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: create 00confnamesMariusz Tkaczyk2023-10-262-0/+127
| | | | | | | | | | | | The test is an attempt to document current implementation of devnode and name handling for config entries. It is focused on incremental- default way of array assembling on boot. The expectations are aligned to current implementation for native metadata because it is the most complicated scenario- both variables can be set. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: create names_templateMariusz Tkaczyk2023-10-262-69/+70
| | | | | | | | Create templates directory and names_template. Move code from 00createnames. This code will be reused for 00confnames in next patch. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a regression test for raid456 deadlock againYu Kuai2023-10-261-0/+34
| | | | | | | | This is a regression test for commit ("md/raid5: fix a deadlock in the case that reshape is interrupted"). Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a regression test that reshape can corrupt dataYu Kuai2023-10-261-0/+35
| | | | | | | | This is a regression test for commit 1544e95c6dd8 ("md: fix data corruption for raid456 when reshape restart while grow up"). Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a regression test that raid456 can't assemble againYu Kuai2023-10-261-0/+33
| | | | | | | | This is a regression test for commit 0aecb06e2249 ("md/raid5: don't allow replacement while reshape is in progress"). Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a regression test that raid456 can't assembleYu Kuai2023-10-261-0/+32
| | | | | | | | | | If recovery is interrupted and reshape is started, then this array can't assemble anymore. The problem is supposed to be fixed by [1]. [1] https://lore.kernel.org/linux-raid/20230529031045.1760883-1-yukuai1@huaweicloud.com/ Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a regression test for raid456 deadlockYu Kuai2023-10-261-0/+58
| | | | | | | | | | | | | The deadlock is described in [1], as the last patch described, it's fixed first by [2], however this fix will be reverted and the deadlock is supposed to be fixed by [3]. [1] https://lore.kernel.org/linux-raid/5ed54ffc-ce82-bf66-4eff-390cb23bc1ac@molgen.mpg.de/T/#t [2] https://lore.kernel.org/linux-raid/20220621031129.24778-1-guoqing.jiang@linux.dev/ [3] https://lore.kernel.org/linux-raid/20230322064122.2384589-5-yukuai1@huaweicloud.com/ Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a regression test for raid10 deadlockYu Kuai2023-10-262-0/+88
| | | | | | | | | | | | | The deadlock is described in [1], it's fixed first by [2], however, it turns out this commit will trigger other problems[3], hence this commit will be reverted and the deadlock is supposed to be fixed by [1]. [1] https://lore.kernel.org/linux-raid/20230322064122.2384589-5-yukuai1@huaweicloud.com/ [2] https://lore.kernel.org/linux-raid/20220621031129.24778-1-guoqing.jiang@linux.dev/ [3] https://lore.kernel.org/linux-raid/20230322064122.2384589-2-yukuai1@huaweicloud.com/ Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add a new test for rdev lifetimeYu Kuai2023-10-261-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test add and remove a underlying disk to raid concurretly, verify that the following problem is fixed: run mdadm test 23rdev-lifetime at Fri Apr 28 03:25:30 UTC 2023 md: could not open device unknown-block(1,0). sysfs: cannot create duplicate filename '/devices/virtual/block/md0/md/dev-ram0' CPU: 26 PID: 10521 Comm: test Not tainted 6.3.0-rc2-00134-g7b3a8828043c #115 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.1-2.fc37 04/014 Call Trace: <TASK> dump_stack_lvl+0xe7/0x180 dump_stack+0x18/0x30 sysfs_warn_dup+0xa2/0xd0 sysfs_create_dir_ns+0x119/0x140 kobject_add_internal+0x143/0x4d0 kobject_add_varg+0x35/0x70 kobject_add+0x64/0xd0 bind_rdev_to_array+0x254/0x840 [md_mod] new_dev_store+0x14d/0x350 [md_mod] md_attr_store+0xc1/0x1a0 [md_mod] sysfs_kf_write+0x51/0x70 kernfs_fop_write_iter+0x188/0x270 vfs_write+0x27e/0x460 ksys_write+0x85/0x180 __x64_sys_write+0x21/0x30 do_syscall_64+0x6c/0xe0 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7f26bacf5387 Code: 0d 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 84 RSP: 002b:00007ffe98d79e68 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 00007f26bacf5387 RDX: 0000000000000004 RSI: 000055bd10282bf0 RDI: 0000000000000001 RBP: 000055bd10282bf0 R08: 000000000000000a R09: 00007f26bad8b4e0 R10: 00007f26bad8b3e0 R11: 0000000000000246 R12: 0000000000000004 R13: 00007f26badc8520 R14: 0000000000000004 R15: 00007f26badc8700 </TASK> Signed-off-by: Yu Kuai <yukuai3@huawei.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests/00raid5-zero: Introduce test to exercise --write-zeros.Logan Gunthorpe2023-03-131-0/+12
| | | | | | | | | | | | | | | Attempt to create a raid5 array with --write-zeros. If it is successful check the array to ensure it is in sync. If it is unsuccessful and an unsupported error is printed, skip the test. Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Acked-by: Kinga Tanska <kinga.tanska@linux.intel.com> Reviewed-by: Xiao Ni <xni@redhat.com> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com> Acked-by: Coly Li <colyli@suse.de> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: add test for namesMariusz Tkaczyk2022-08-231-0/+93
| | | | | | | | | | Current behavior is not documented and tested. This test is a base for future improvements. It is enough to test it only with native metadata, because it is generic code. Generated properties are passed to metadata handler. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com>
* tests/00readonly: Run udevadm settle before setting roLogan Gunthorpe2022-08-231-0/+1
| | | | | | | | | | | | | | | In some recent kernel versions, 00readonly fails with: mdadm: failed to set readonly for /dev/md0: Device or resource busy ERROR: array is not read-only! This was traced down to a race condition with udev holding a reference to the block device at the same time as trying to set it read only. To fix this, call udevadm settle before setting the array read only. Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com>
* tests: Add broken files for all broken testsLogan Gunthorpe2022-08-0724-0/+226
| | | | | | | | | | | | | | | | | | | | | Each broken file contains the rough frequency of brokeness as well as a brief explanation of what happens when it breaks. Estimates of failure rates are not statistically significant and can vary run to run. This is really just a view from my window. Tests were done on a small VM with the default loop devices, not real hardware. We've seen different kernel configurations can cause bugs to appear as well (ie. different block schedulers). It may also be that different race conditions will be seen on machines with different performance characteristics. These annotations were done with the kernel currently in md/md-next: facef3b96c5b ("md: Notify sysfs sync_completed in md_reap_sync_thread()") Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests/02lineargrow: clear the superblock at every iterationSudhakar Panneerselvam2022-08-071-0/+2
| | | | | | | | | | This fixes 02lineargrow test as prior metadata causes --add operation to misbehave. Signed-off-by: Sudhakar Panneerselvam <sudhakar.panneerselvam@oracle.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests/04update-metadata: avoid passing chunk size to raid1Sudhakar Panneerselvam2022-08-071-1/+5
| | | | | | | | | | | | '04update-metadata' test fails with error, "specifying chunk size is forbidden for this level" added by commit, 5b30a34aa4b5e. Hence, correcting the test to ignore passing chunk size to raid1. Signed-off-by: Sudhakar Panneerselvam <sudhakar.panneerselvam@oracle.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> [logang@deltatee.com: fix if/then style and dropped unrelated hunk] Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests: fix raid0 tests for 0.90 metadataSudhakar Panneerselvam2022-08-075-8/+12
| | | | | | | | | | | | Some of the test cases fail because raid0 creation fails with the error, "0.90 metadata does not support layouts for RAID0" added by commit, 329dfc28debb. Fix some of the test cases by switching from raid0 to linear level for 0.9 metadata where possible. Signed-off-by: Sudhakar Panneerselvam <sudhakar.panneerselvam@oracle.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* tests/00raid0: add a test that validates raid0 with layout fails for 0.9Sudhakar Panneerselvam2022-08-071-4/+2
| | | | | | | | | | 329dfc28debb disallows the creation of raid0 with layouts for 0.9 metadata. This test confirms the new behavior. Signed-off-by: Sudhakar Panneerselvam <sudhakar.panneerselvam@oracle.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
* imsm: block changing slots during creationMariusz Tkaczyk2022-06-241-28/+0
| | | | | | | | | | | | | | | | | | If user specifies drives for array creation, then slot order across volumes is not preserved. Ideally, it should be checked in validate_geometry() but it is not possible in current implementation (order is determined later). Add verification in add_to_super_imsm_volume() and throw error if mismatch is detected. IMSM allows to use only same members within container. This is not hardware dependency but metadata limitation. Therefore, 09-imsm-overlap test is removed. Testing it is pointless. After this patch, creation in this scenario is blocked. Offset verification is covered in other tests. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Acked-by: Coly Li <colyli@suse.de> Signed-off-by: Jes Sorensen <jsorensen@fb.com>