diff --git a/arch/s390/kernel/ipl.c b/arch/s390/kernel/ipl.c
index 7f3a84e414a47c702981b922f23c1fd79ff616cc..05e51666db033f1b82f2efb1439c2c3ea5e99364 100644
--- a/arch/s390/kernel/ipl.c
+++ b/arch/s390/kernel/ipl.c
@@ -266,7 +266,7 @@ static ssize_t sys_##_prefix##_##_name##_store(struct kobject *kobj,	\
 		struct kobj_attribute *attr,				\
 		const char *buf, size_t len)				\
 {									\
-	strncpy(_value, buf, sizeof(_value) - 1);			\
+	strscpy(_value, buf, sizeof(_value));				\
 	strim(_value);							\
 	return len;							\
 }									\