btrfs-progs: tests: fix cli/017 test case failure

[BUG]
Test case cli/017 fails with the following errors:

    [TEST]   cli-tests.sh
    [TEST/cli]   017-fi-show-missing
  didn't find exact missing device
  test failed for case 017-fi-show-missing

[CAUSE]
After kernel commit cb3e217bdb39 ("btrfs: use btrfs_dev_name() helper to
handle missing devices better"), all dev info ioctl call on missing
device would only return "<missing disk>" for its path.

Thus "btrfs filesystem show" would never report detailed device path for
missing disks.

[FIX]
Instead of relying on the device path, change the check to rely on devid
instead.

Now cli/017 can properly pass.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Qu Wenruo 2023-02-13 13:26:33 +08:00 committed by David Sterba
parent f61b90aff9
commit e3a24cf11a
1 changed files with 1 additions and 1 deletions

View File

@ -23,7 +23,7 @@ run_check $SUDO_HELPER mv "$dev2" /dev/loop-non-existent
run_check $SUDO_HELPER mount -o degraded $dev1 $TEST_MNT
if ! run_check_stdout $SUDO_HELPER "$TOP/btrfs" filesystem show "$TEST_MNT" | \
grep -q "$dev2 MISSING"; then
grep -q -e "devid[[:space:]]\+2.*MISSING"; then
_fail "didn't find exact missing device"
fi