[PATCH v2] btrfs/124: add balance --full-balance option

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



btrfs balance needs --full-balance option since 4.6, so check the
version and then use it.

As this may be useful for other btrfs tests as well, so this patch
also adds _run_btrfs_balance_start() to the common/btrfs file.

Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx>
---
v2: Use help to find if --full-balance is supported
    Make a local variable
    run the balance instead of getting the options

 common/btrfs    | 11 +++++++++++
 tests/btrfs/124 |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/common/btrfs b/common/btrfs
index c09206c6f292..c3a62b29c70e 100644
--- a/common/btrfs
+++ b/common/btrfs
@@ -356,3 +356,14 @@ _btrfs_compression_algos()
 		echo "${feature#/sys/fs/btrfs/features/compress_}"
 	done
 }
+
+#runs btrfs balance start with required --full-balance if available.
+_run_btrfs_balance_start()
+{
+	local bal_opt=""
+
+	$BTRFS_UTIL_PROG balance start --help | grep -q "full-balance"
+	(( $? == 0 )) && bal_opt="--full-balance"
+
+	run_check $BTRFS_UTIL_PROG balance start $bal_opt $*
+}
diff --git a/tests/btrfs/124 b/tests/btrfs/124
index a6486270a972..94c35fe1ede8 100755
--- a/tests/btrfs/124
+++ b/tests/btrfs/124
@@ -129,7 +129,7 @@ _run_btrfs_util_prog device scan
 _scratch_mount >> $seqres.full 2>&1
 _run_btrfs_util_prog filesystem show
 echo >> $seqres.full
-_run_btrfs_util_prog balance start ${SCRATCH_MNT}
+_run_btrfs_balance_start ${SCRATCH_MNT}
 
 checkpoint2=`md5sum $SCRATCH_MNT/tf2`
 echo $checkpoint2 >> $seqres.full 2>&1
-- 
2.15.0

--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux