summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Kubecek <mkubecek@suse.cz>2021-05-15 12:11:13 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-04-13 12:59:57 +0200
commit44900a8bec03aed77f23b374acb9103dcd3e7a3d (patch)
treed8617deb89af3bc60f67ddf4131b8e98edc80204
parent682f6ca9675918c8d28758bfcd409e29e673b456 (diff)
kbuild: dummy-tools: adjust to stricter stackprotector check
commit c93db682cfb213501881072a9200a48ce1dc3c3f upstream. Commit 3fb0fdb3bbe7 ("x86/stackprotector/32: Make the canary into a regular percpu variable") modified the stackprotector check on 32-bit x86 to check if gcc supports using %fs as canary. Adjust dummy-tools gcc script to pass this new test by returning "%fs" rather than "%gs" if it detects -mstack-protector-guard-reg=fs on command line. Fixes: 3fb0fdb3bbe7 ("x86/stackprotector/32: Make the canary into a regular percpu variable") Signed-off-by: Michal Kubecek <mkubecek@suse.cz> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rwxr-xr-xscripts/dummy-tools/gcc6
1 files changed, 5 insertions, 1 deletions
diff --git a/scripts/dummy-tools/gcc b/scripts/dummy-tools/gcc
index 485427f40dba..91df612bf937 100755
--- a/scripts/dummy-tools/gcc
+++ b/scripts/dummy-tools/gcc
@@ -76,7 +76,11 @@ fi
if arg_contain -S "$@"; then
# For scripts/gcc-x86-*-has-stack-protector.sh
if arg_contain -fstack-protector "$@"; then
- echo "%gs"
+ if arg_contain -mstack-protector-guard-reg=fs "$@"; then
+ echo "%fs"
+ else
+ echo "%gs"
+ fi
exit 0
fi
fi