aboutsummaryrefslogtreecommitdiffstats
path: root/main/musl/workaround-gcc-pr58245.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/musl/workaround-gcc-pr58245.patch')
-rw-r--r--main/musl/workaround-gcc-pr58245.patch24
1 files changed, 24 insertions, 0 deletions
diff --git a/main/musl/workaround-gcc-pr58245.patch b/main/musl/workaround-gcc-pr58245.patch
new file mode 100644
index 0000000000..5f57d352ff
--- /dev/null
+++ b/main/musl/workaround-gcc-pr58245.patch
@@ -0,0 +1,24 @@
+Author: Timo Teräs <timo.teras@iki.fi>
+
+Due to http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58245 many simple
+programs can fail. Since in Alpine Linux everything default to be
+built with -fstack-protector-all, we can just assume SSP being always
+used.
+
+Not suitable to upstream, as this incurs startup overhead that is not
+desirable unless SSP is really used.
+
+diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c
+index a525b3d..a1b8471 100644
+--- a/src/ldso/dynlink.c
++++ b/src/ldso/dynlink.c
+@@ -99,7 +99,7 @@ void __init_libc(char **, char *);
+ static struct dso *head, *tail, *ldso, *fini_head;
+ static char *env_path, *sys_path;
+ static unsigned long long gencnt;
+-static int ssp_used;
++static int ssp_used = 1;
+ static int runtime;
+ static int ldd_mode;
+ static int ldso_fail;
+