From 201ad5c9e50de9287e5efd3b780a3e3628842c2a Mon Sep 17 00:00:00 2001 From: David Sterba Date: Tue, 2 Jul 2019 13:36:53 +0200 Subject: [PATCH] btrfs-progs: tests: add helper to compare kernel versions Return succcess if runnning kernel >= parameter. Most callers will want to skip the test. Signed-off-by: David Sterba --- tests/common | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/common b/tests/common index b3f286a0..0859bc82 100644 --- a/tests/common +++ b/tests/common @@ -528,6 +528,28 @@ check_kernel_support() return 0 } +# compare running kernel version to the given parameter, return success +# if running is newer than requested (let caller decide if to fail or skip) +# $1: minimum version of running kernel in major.minor format (eg. 4.19) +check_min_kernel_version() +{ + local unamemajor + local unameminor + local argmajor + local argminor + + # 4.19.1-1-default + uname=$(uname -r) + # 4.19.1 + uname=${uname%%-*} + IFS=. read unamemajor unameminor tmp <<< "$uname" + IFS=. read argmajor argminor tmp <<< "$1" + # "compare versions: ${unamemajor}.${unameminor} ? ${argmajor}.${argminor}" + [ "$unamemajor" -lt "$argmajor" ] || return 1 + [ "$unameminor" -lt "$argminor" ] || return 1 + return 0 +} + # how many files to create. DATASET_SIZE=50