Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751390AbeAPVY5 (ORCPT + 1 other); Tue, 16 Jan 2018 16:24:57 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:44399 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750832AbeAPVY4 (ORCPT ); Tue, 16 Jan 2018 16:24:56 -0500 Date: Tue, 16 Jan 2018 22:24:53 +0100 (CET) From: Thomas Gleixner To: Andi Kleen cc: torvalds@linux-foundation.org, dwmw@amazon.co.uk, linux-kernel@vger.kernel.org, gregkh@linux-foundation.org, arjan.van.de.ven@intel.com, jeyu@kernel.org, rusty@rustcorp.com.au, Andi Kleen Subject: Re: [PATCH v3] retpoline: Add retpoline tag to VERMAGIC In-Reply-To: <20180116205228.4890-1-andi@firstfloor.org> Message-ID: References: <20180116205228.4890-1-andi@firstfloor.org> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Linutronix-Spam-Score: -1.0 X-Linutronix-Spam-Level: - X-Linutronix-Spam-Status: No , -1.0 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On Tue, 16 Jan 2018, Andi Kleen wrote: > From: Andi Kleen > > Add a marker for retpoline to the module VERMAGIC. This catches > the case when a non RETPOLINE compiled module gets loaded into > a retpoline kernel, making it insecure. > > It doesn't handle the case when retpoline has been runtime disabled. > Even in this case the match of the retcompile status will be enforced. > This implies that even with retpoline run time disabled all modules > loaded need to be recompiled. > > This supersedes an earlier patch that did the same checking using > a new module tag (so it's really a v3) > > Signed-off-by: Andi Kleen Acked-by: Thomas Gleixner > --- > include/linux/vermagic.h | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/include/linux/vermagic.h b/include/linux/vermagic.h > index bae807eb2933..853291714ae0 100644 > --- a/include/linux/vermagic.h > +++ b/include/linux/vermagic.h > @@ -31,11 +31,17 @@ > #else > #define MODULE_RANDSTRUCT_PLUGIN > #endif > +#ifdef RETPOLINE > +#define MODULE_VERMAGIC_RETPOLINE "retpoline " > +#else > +#define MODULE_VERMAGIC_RETPOLINE "" > +#endif > > #define VERMAGIC_STRING \ > UTS_RELEASE " " \ > MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT \ > MODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_MODVERSIONS \ > MODULE_ARCH_VERMAGIC \ > - MODULE_RANDSTRUCT_PLUGIN > + MODULE_RANDSTRUCT_PLUGIN \ > + MODULE_VERMAGIC_RETPOLINE > > -- > 2.14.3 > >