lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 28 Aug 2018 08:02:37 +0200 From: Juergen Gross <jgross@...e.com> To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Nick Desaulniers <ndesaulniers@...gle.com> Cc: tglx@...utronix.de, mingo@...hat.com, stable@...r.kernel.org, "H. Peter Anvin" <hpa@...or.com>, x86@...nel.org, Boris Ostrovsky <boris.ostrovsky@...cle.com>, linux-kernel@...r.kernel.org Subject: Re: [PATCH] x86/irqflags: mark native_restore_fl extern inline On 28/08/18 07:13, Greg Kroah-Hartman wrote: > On Mon, Aug 27, 2018 at 02:40:09PM -0700, Nick Desaulniers wrote: >> Fixes commit 208cbb325589 ("x86/irqflags: Provide a declaration for >> native_save_fl") >> >> This should have been marked extern inline in order to pick up the out >> of line definition in arch/x86/kernel/irqflags.S. >> >> Cc: stable@...r.kernel.org # 4.18, 4.14, 4.9, 4.4 >> Reported-by: Ben Hutchings <ben.hutchings@...ethink.co.uk> >> Signed-off-by: Nick Desaulniers <ndesaulniers@...gle.com> >> --- >> arch/x86/include/asm/irqflags.h | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/arch/x86/include/asm/irqflags.h b/arch/x86/include/asm/irqflags.h >> index c14f2a74b2be..15450a675031 100644 >> --- a/arch/x86/include/asm/irqflags.h >> +++ b/arch/x86/include/asm/irqflags.h >> @@ -33,7 +33,8 @@ extern inline unsigned long native_save_fl(void) >> return flags; >> } >> >> -static inline void native_restore_fl(unsigned long flags) >> +extern inline void native_restore_fl(unsigned long flags); >> +extern inline void native_restore_fl(unsigned long flags) > > This looks odd to me, but my coffee hasn't kicked in yet this morning. > Why do you need both lines here? Shouldn't the actual function be > sufficient? If not, a comment explaining this would be nice. Look just some lines further up: /* Declaration required for gcc < 4.9 to prevent -Werror=missing-prototypes */ extern inline unsigned long native_save_fl(void); extern inline unsigned long native_save_fl(void) Juergen
Powered by blists - more mailing lists