Jiri Slaby ef7db2
From: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Jiri Slaby ef7db2
Date: Sat, 14 Jan 2023 18:33:09 +0100
Jiri Slaby ef7db2
Subject: [PATCH] x86/signal: Fix the value returned by strict_sas_size()
Jiri Slaby ef7db2
References: bsc#1012628
Jiri Slaby ef7db2
Patch-mainline: 6.2.3
Jiri Slaby ef7db2
Git-commit: ef6dfc4b238a435ab552207ec09e4a82b6426d31
Jiri Slaby ef7db2
Jiri Slaby ef7db2
[ Upstream commit ef6dfc4b238a435ab552207ec09e4a82b6426d31 ]
Jiri Slaby ef7db2
Jiri Slaby ef7db2
Functions used with __setup() return 1 when the argument has been
Jiri Slaby ef7db2
successfully parsed.
Jiri Slaby ef7db2
Jiri Slaby ef7db2
Reverse the returned value so that 1 is returned when kstrtobool() is
Jiri Slaby ef7db2
successful (i.e. returns 0).
Jiri Slaby ef7db2
Jiri Slaby ef7db2
My understanding of these __setup() functions is that returning 1 or 0
Jiri Slaby ef7db2
does not change much anyway - so this is more of a cleanup than a
Jiri Slaby ef7db2
functional fix.
Jiri Slaby ef7db2
Jiri Slaby ef7db2
I spot it and found it spurious while looking at something else.
Jiri Slaby ef7db2
Even if the output is not perfect, you'll get the idea with:
Jiri Slaby ef7db2
Jiri Slaby ef7db2
   $ git grep -B2 -A10 retu.*kstrtobool | grep __setup -B10
Jiri Slaby ef7db2
Jiri Slaby ef7db2
Fixes: 3aac3ebea08f ("x86/signal: Implement sigaltstack size validation")
Jiri Slaby ef7db2
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Jiri Slaby ef7db2
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Jiri Slaby ef7db2
Link: https://lore.kernel.org/r/73882d43ebe420c9d8fb82d0560021722b243000.1673717552.git.christophe.jaillet@wanadoo.fr
Jiri Slaby ef7db2
Signed-off-by: Sasha Levin <sashal@kernel.org>
Jiri Slaby ef7db2
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Jiri Slaby ef7db2
---
Jiri Slaby ef7db2
 arch/x86/kernel/signal.c | 2 +-
Jiri Slaby ef7db2
 1 file changed, 1 insertion(+), 1 deletion(-)
Jiri Slaby ef7db2
Jiri Slaby ef7db2
diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c
Jiri Slaby ef7db2
index 1504eb8d..004cb30b 100644
Jiri Slaby ef7db2
--- a/arch/x86/kernel/signal.c
Jiri Slaby ef7db2
+++ b/arch/x86/kernel/signal.c
Jiri Slaby ef7db2
@@ -360,7 +360,7 @@ static bool strict_sigaltstack_size __ro_after_init = false;
Jiri Slaby ef7db2
 
Jiri Slaby ef7db2
 static int __init strict_sas_size(char *arg)
Jiri Slaby ef7db2
 {
Jiri Slaby ef7db2
-	return kstrtobool(arg, &strict_sigaltstack_size);
Jiri Slaby ef7db2
+	return kstrtobool(arg, &strict_sigaltstack_size) == 0;
Jiri Slaby ef7db2
 }
Jiri Slaby ef7db2
 __setup("strict_sas_size", strict_sas_size);
Jiri Slaby ef7db2
 
Jiri Slaby ef7db2
-- 
Jiri Slaby ef7db2
2.35.3
Jiri Slaby ef7db2