Different os distributions have different kernel version themselves. Check new_level sysfs interface rather than kernel version. Signed-off-by: Xiao Ni <xni@xxxxxxxxxx> --- Grow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Grow.c b/Grow.c index ef1285ecebcf..9032c3e9c09f 100644 --- a/Grow.c +++ b/Grow.c @@ -2952,7 +2952,7 @@ static int impose_reshape(struct mdinfo *sra, err = errno; /* new_level is introduced in kernel 6.12 */ - if (!err && get_linux_version() >= 6012000 && + if (!err && sysfs_attribute_available(sra, NULL, "new_level") && sysfs_set_num(sra, NULL, "new_level", info->new_level) < 0) err = errno; -- 2.32.0 (Apple Git-132)