Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp568466ybz; Wed, 22 Apr 2020 03:55:08 -0700 (PDT) X-Google-Smtp-Source: APiQypJLYzigQakv8Cleas7r13n4p4co30SiDY4tQ6XZADZEpq/2MMhMvk1WLSe4d9ue4Io66mw7 X-Received: by 2002:aa7:c795:: with SMTP id n21mr20680223eds.6.1587552908085; Wed, 22 Apr 2020 03:55:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587552908; cv=none; d=google.com; s=arc-20160816; b=hvTI9LTYYWoM8eogXz0FbNnJFT/kUHfas61LA8NySBgcypo7GD6SxXuF5e3FO5+bBL AHdzWJuuCjtCG4hx1FtsUDIJ14zAqi7M17bDWEhxNVz77rvDPwHg/qB6IowiC72lRZa/ jMN04hWR9ATRt6lSEz6X8jp9U3aX6vCHx6IeJsufNgwRZ7exXeexAvOS4qDqDtuc3Ecj vpWq2Yss74ekm8lSy0rdNU+jv8LL0FTnGuA/MP332iXYsqdtkT2jNwefh40eqNfo1evu m/nykGgkq8T/bQh4evNTShP+yxWSbeXozpvyNgjAbPAFlxeRlX5moKXfPDDiqBfjOAUY cLNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=6LRPfKoUEmHwtcCTtzcUZDSgvihk07jIas5weeiCCyg=; b=XNapJS9ZqU4ASzpj1AUUWjjt7RlDoXBwKhpDLYtMzxxrRyiW2xfE2ZfiVv/8XknFN7 mF1me/0keo5Q1nqF3r9tu8mS62zW9HJnMlgt9nkyWAcnPCXNAWx00iDpc3DOntQawu8k FapodX3lTF+OOWgnT8qb/HgUbW2EBbBKfD9fMFJ+Aqfj1/BHIvK2H/khbEJb+BCsgjcv 7fplBDJpAQankKhYbjA/9/ivJO+mJuYxL/TMilbkTgnEcjrS47T0MpGiJEnk5h7m1ZkH hA8/96Llr07UDrYMefDfVbt0HTZb2aagPQ4dEJ8uJb/r6O4LW4WuLrjo9bMwPzojFLNI KTIw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=KQ8fAOJg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k7si3404098eji.41.2020.04.22.03.54.45; Wed, 22 Apr 2020 03:55:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=KQ8fAOJg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732022AbgDVKuv (ORCPT + 99 others); Wed, 22 Apr 2020 06:50:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:44366 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729249AbgDVKLu (ORCPT ); Wed, 22 Apr 2020 06:11:50 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 97A4E20575; Wed, 22 Apr 2020 10:11:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1587550310; bh=K+uM9txe6RidWvLhVcS9tv/Lh4YLAQQ5NMzlaOE6ScA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KQ8fAOJg6QvB6URFijN+bAzNmBbL5gXxqRsXhE32CHuwIjVNwahFCDw/apWYsxpIj iAVrmQDGGLWibJXqM8+fx40N8/sO5za+0HwqWmiJUC6P50xdTVTV7QAGnqqYa0778E glcov3ToddPTntd5L2F92+rWaw75Awd8t1nNfFhM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Segher Boessenkool , Michael Ellerman , Nathan Chancellor Subject: [PATCH 4.14 093/199] powerpc: Add attributes for setjmp/longjmp Date: Wed, 22 Apr 2020 11:56:59 +0200 Message-Id: <20200422095107.377311816@linuxfoundation.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200422095057.806111593@linuxfoundation.org> References: <20200422095057.806111593@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Segher Boessenkool commit aa497d4352414aad22e792b35d0aaaa12bbc37c5 upstream. The setjmp function should be declared as "returns_twice", or bad things can happen[1]. This does not actually change generated code in my testing. The longjmp function should be declared as "noreturn", so that the compiler can optimise calls to it better. This makes the generated code a little shorter. 1: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-returns_005ftwice-function-attribute Signed-off-by: Segher Boessenkool Signed-off-by: Michael Ellerman Link: https://lore.kernel.org/r/c02ce4a573f3bac907e2c70957a2d1275f910013.1567605586.git.segher@kernel.crashing.org Signed-off-by: Nathan Chancellor Signed-off-by: Greg Kroah-Hartman --- arch/powerpc/include/asm/setjmp.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/arch/powerpc/include/asm/setjmp.h +++ b/arch/powerpc/include/asm/setjmp.h @@ -12,7 +12,7 @@ #define JMP_BUF_LEN 23 -extern long setjmp(long *); -extern void longjmp(long *, long); +extern long setjmp(long *) __attribute__((returns_twice)); +extern void longjmp(long *, long) __attribute__((noreturn)); #endif /* _ASM_POWERPC_SETJMP_H */