diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2023-06-10 22:34:18 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-06-10 22:38:43 -0400 |
commit | 196a1f8f5d71e527ba0fb10c9cc00b5d3f9faa95 (patch) | |
tree | 2be279c7e8adc45a31b9ccb14cd29267b2070ae6 /tests | |
parent | 45269422cb97ba03d6cb2690fffd7c414f071240 (diff) |
tests/bcachefs/ec: Test improvements
- don't need errors=panic for most tests
- but ec_gc does need errors=panic
- ec_gc was exiting early, whoops
- other refactoring/comments
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/bcachefs/ec.ktest | 32 | ||||
-rwxr-xr-x | tests/bcachefs/single_device.ktest | 2 |
2 files changed, 16 insertions, 18 deletions
diff --git a/tests/bcachefs/ec.ktest b/tests/bcachefs/ec.ktest index 9914284..421c815 100755 --- a/tests/bcachefs/ec.ktest +++ b/tests/bcachefs/ec.ktest @@ -76,7 +76,6 @@ do_ec_test() bcachefs_antagonist run_quiet "" bcachefs format -f \ - --errors=panic \ --erasure_code \ "$@" \ --replicas=2 \ @@ -169,28 +168,32 @@ test_ec_gc() { set_watchdog 1200 - bcachefs_antagonist + local loops=$((($ktest_priority + 1) * 4)) + # We need errors=panic since we're ignoring errors from fio: run_quiet "" bcachefs format -f \ - --errors=continue \ + --errors=panic \ --replicas=2 \ "${ktest_scratch_dev[@]}" devs="$(join_by : "${ktest_scratch_dev[@]}")" mount -t bcachefs -o erasure_code $devs /mnt + bcachefs_antagonist + fill_device /mnt/fiotest - local loops=$((($ktest_priority + 1) * 4)) - for i in $(seq 1 $loops); do + # Writing with a small block size will increase the size of our metadata, + # meaning we'll eventually see -ENOSPC even though ideally we shouldn't + # since we're overwriting + # When we do, truncate to free up some space and keep going: + for i in $(seq 0 $loops); do run_fio_base \ - --buffer_compress_percentage=50 \ - \ --name=randwrite \ --stonewall \ --rw=randwrite \ - --loops=$loops \ - --bsrange=4k-4k + --size=20G \ + --bsrange=4k-4k || true cur_size=$(stat -c '%s' /mnt/fiotest) new_size=$(($cur_size - 1048576)) @@ -199,19 +202,15 @@ test_ec_gc() truncate --size=$new_size /mnt/fiotest done - echo 1 > /sys/fs/bcachefs/*/internal/trigger_gc - echo unmounting - exit - bcachefs fs usage -h /mnt umount /mnt + bcachefs fsck -n "${ktest_scratch_dev[@]}" + # test remount: - mount -t bcachefs -o fix_errors,erasure_code $devs /mnt + mount -t bcachefs $devs /mnt umount /mnt - bcachefs fsck "${ktest_scratch_dev[@]}" - check_counters ${ktest_scratch_dev[0]} } @@ -223,7 +222,6 @@ do_remove_test() set_watchdog 60 run_quiet "" bcachefs format \ - --errors=panic \ --erasure_code \ --replicas=2 \ "${ktest_scratch_dev[@]}" diff --git a/tests/bcachefs/single_device.ktest b/tests/bcachefs/single_device.ktest index a2d550d..1cadabc 100755 --- a/tests/bcachefs/single_device.ktest +++ b/tests/bcachefs/single_device.ktest @@ -672,7 +672,7 @@ run_copygc_torture() fill_device /mnt/fiotest - for i in $(seq 1 $loops); do + for i in $(seq 0 $loops); do run_fio_base \ --buffer_compress_percentage=50 \ \ |