When kernel version numbers have postfix letters, _have_fio_ver fail to
parse the version. For example, uname -r returns "6.3.0+", it handles
"0+" as a number and fails to parse. Fix it by dropping all letters
other than numbers or period.
Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Link: https://lore.kernel.org/linux-block/20230501041415.49939-1-shinichiro.kawasaki@wdc.com/
_have_kver() {
local d=$1 e=$2 f=$3
- IFS='.' read -r a b c < <(uname -r | sed 's/-.*//')
+ IFS='.' read -r a b c < <(uname -r | sed 's/-.*//;s/[^.0-9]//')
if [ $((a * 65536 + b * 256 + c)) -lt $((d * 65536 + e * 256 + f)) ];
then
SKIP_REASONS+=("Kernel version too old")