The length parameter of strlcpy() is supposed to reflect the size of the target buffer, not of the source string. Harmless in this case as the buffer is PAGE_SIZE long and the source string is always much shorter than this, but conceptually wrong, so let's fix it.
Signed-off-by: Jean Delvare <jdelv...@suse.de> --- Changes since v1: * Patch added kernel/params.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- linux-4.13.orig/kernel/params.c 2017-09-28 11:09:09.604089430 +0200 +++ linux-4.13/kernel/params.c 2017-09-28 11:09:47.573434740 +0200 @@ -507,7 +507,7 @@ EXPORT_SYMBOL(param_set_copystring); int param_get_string(char *buffer, const struct kernel_param *kp) { const struct kparam_string *kps = kp->str; - return strlcpy(buffer, kps->string, kps->maxlen); + return strlcpy(buffer, kps->string, PAGE_SIZE); } EXPORT_SYMBOL(param_get_string); -- Jean Delvare SUSE L3 Support