btrfs-progs: tests: Add test for collision DIR_ITEM handling

Verify that if we have an otherwise clean filesystem, containging
collided DIR_ITEM, btrfs check lowmem's mode can correctly handle those
and not produce any false positives.

This if fixed by commit titled:

 "btrfs-progs: check: fix DIR_ITEM checking in lowmem"

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
master
Nikolay Borisov 2018-03-26 16:59:34 +03:00 committed by David Sterba
parent 62b7a389c6
commit e889fd7c11
1 changed files with 24 additions and 0 deletions

View File

@ -0,0 +1,24 @@
#!/bin/bash
# Ensure that running btrfs check on a fs which has name collisions of files
# doesn't result in false positives. This test is specifically targeted at
# lowmem mode.
source "$TEST_TOP/common"
check_prereq btrfs
check_prereq mkfs.btrfs
setup_root_helper
prepare_test_dev
run_check $SUDO_HELPER "$TOP/mkfs.btrfs" -f "$TEST_DEV"
run_check_mount_test_dev
# Create 2 files whose names collide
run_check $SUDO_HELPER touch "$TEST_MNT/5ab4e206~~~~~~~~XVT1U3ZF647YS2PD4AKAG826"
run_check $SUDO_HELPER touch "$TEST_MNT/5ab4e26a~~~~~~~~AP1C3VQBE79IJOTVOEZIR9YU"
run_check_umount_test_dev
# The fs is clean so lowmem shouldn't produce any warnings
run_check "$TOP/btrfs" check --readonly "$TEST_DEV"