From patchwork Wed Feb 24 23:28:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nix X-Patchwork-Id: 11060 Received: (qmail 123470 invoked by alias); 24 Feb 2016 23:28:31 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 123381 invoked by uid 89); 24 Feb 2016 23:28:31 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.3 required=5.0 tests=AWL, BAYES_50, KAM_LAZY_DOMAIN_SECURITY, RP_MATCHES_RCVD autolearn=no version=3.3.2 spammy=UD:2.7.0.198.g6dd47b6, sk:2701, UD:198.g6dd47b6, UD:0.198.g6dd47b6 X-HELO: mail.esperi.org.uk From: Nix To: libc-alpha@sourceware.org Subject: [PATCH 14/14] sparc: do not stack-protect the sigreturn handler. Date: Wed, 24 Feb 2016 23:28:20 +0000 Message-Id: <1456356500-25601-15-git-send-email-nix@esperi.org.uk> In-Reply-To: <1456356500-25601-1-git-send-email-nix@esperi.org.uk> References: <1456356500-25601-1-git-send-email-nix@esperi.org.uk> X-DCC-wuwien-Metrics: spindle 1290; Body=1 Fuz1=1 Fuz2=1 From: Nick Alcock This is called from the kernel and must not have a canary. v2: New. v3: Use $(no-stack-protector). --- sysdeps/unix/sysv/linux/sparc/sparc32/Makefile | 5 +++++ sysdeps/unix/sysv/linux/sparc/sparc64/Makefile | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/Makefile b/sysdeps/unix/sysv/linux/sparc/sparc32/Makefile index 21c7dc1..4ca7052 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/Makefile +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/Makefile @@ -26,3 +26,8 @@ ifeq ($(subdir),math) # Provide these routines here as well. libm-routines += multc3 divtc3 endif # math + +ifneq (,$(filter signal nptl,$(subdir))) +# We must not stack-protect the sigreturn handler. +CFLAGS-sigaction.c += $(no-stack-protector) +endif # signal diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile b/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile index 7ea433f..03a86ce 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile @@ -12,3 +12,8 @@ ifeq ($(subdir),nptl) CFLAGS-pause.c += -fexceptions CFLAGS-sigsuspend.c += -fexceptions endif + +ifneq (,$(filter signal nptl,$(subdir))) +# We must not stack-protect the sigreturn handler. +CFLAGS-sigaction.c += $(no-stack-protector) +endif # signal