Messages in this thread |  | | Date | Sat, 27 Jan 2018 14:40:33 +0100 | From | Borislav Petkov <> | Subject | Re: [tip:x86/pti] module/retpoline: Warn about missing retpoline in module |
| |
On Fri, Jan 26, 2018 at 06:59:06AM -0800, tip-bot for Andi Kleen wrote: > Commit-ID: caf7501a1b4ec964190f31f9c3f163de252273b8 > Gitweb: https://git.kernel.org/tip/caf7501a1b4ec964190f31f9c3f163de252273b8 > Author: Andi Kleen <ak@linux.intel.com> > AuthorDate: Thu, 25 Jan 2018 15:50:28 -0800 > Committer: Thomas Gleixner <tglx@linutronix.de> > CommitDate: Fri, 26 Jan 2018 15:03:56 +0100 > > module/retpoline: Warn about missing retpoline in module > > There's a risk that a kernel which has full retpoline mitigations becomes > vulnerable when a module gets loaded that hasn't been compiled with the > right compiler or the right option. > > To enable detection of that mismatch at module load time, add a module info > string "retpoline" at build time when the module was compiled with > retpoline support. This only covers compiled C source, but assembler source > or prebuilt object files are not checked. > > If a retpoline enabled kernel detects a non retpoline protected module at > load time, print a warning and report it in the sysfs vulnerability file. > > [ tglx: Massaged changelog ] > > Signed-off-by: Andi Kleen <ak@linux.intel.com> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > Cc: David Woodhouse <dwmw2@infradead.org> > Cc: gregkh@linuxfoundation.org > Cc: torvalds@linux-foundation.org > Cc: jeyu@kernel.org > Cc: arjan@linux.intel.com > Link: https://lkml.kernel.org/r/20180125235028.31211-1-andi@firstfloor.org > --- > arch/x86/kernel/cpu/bugs.c | 17 ++++++++++++++++- > include/linux/module.h | 9 +++++++++ > kernel/module.c | 11 +++++++++++ > scripts/mod/modpost.c | 9 +++++++++ > 4 files changed, 45 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c > index 390b3dc..4a39d7b 100644 > --- a/arch/x86/kernel/cpu/bugs.c > +++ b/arch/x86/kernel/cpu/bugs.c > @@ -11,6 +11,7 @@ > #include <linux/init.h> > #include <linux/utsname.h> > #include <linux/cpu.h> > +#include <linux/module.h> > > #include <asm/nospec-branch.h> > #include <asm/cmdline.h> > @@ -93,6 +94,19 @@ static const char *spectre_v2_strings[] = { > #define pr_fmt(fmt) "Spectre V2 mitigation: " fmt > > static enum spectre_v2_mitigation spectre_v2_enabled = SPECTRE_V2_NONE; > +static bool spectre_v2_bad_module;
allnoconfig says:
arch/x86/kernel/cpu/bugs.c:97:13: warning: ‘spectre_v2_bad_module’ defined but not used [-Wunused-variable] static bool spectre_v2_bad_module; ^
-- Regards/Gruss, Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
|  |