Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936535Ab3DHXBo (ORCPT ); Mon, 8 Apr 2013 19:01:44 -0400 Received: from eddie.linux-mips.org ([78.24.191.182]:36920 "EHLO cvs.linux-mips.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760264Ab3DHXBn (ORCPT ); Mon, 8 Apr 2013 19:01:43 -0400 X-Greylist: delayed 307 seconds by postgrey-1.27 at vger.kernel.org; Mon, 08 Apr 2013 19:01:43 EDT Date: Mon, 8 Apr 2013 23:56:29 +0100 (BST) From: "Maciej W. Rozycki" To: Kees Cook cc: Ingo Molnar , linux-kernel@vger.kernel.org, Thomas Gleixner , "H. Peter Anvin" , x86@kernel.org, Konrad Rzeszutek Wilk , Jeremy Fitzhardinge , Marcelo Tosatti , Alex Shi , Borislav Petkov , Alexander Duyck , Frederic Weisbecker , Steven Rostedt , "Paul E. McKenney" , xen-devel@lists.xensource.com, virtualization@lists.linux-foundation.org, kernel-hardening@lists.openwall.com, Dan Rosenberg , Julien Tinnes , Will Drewry , Eric Northup Subject: Re: [PATCH] x86: make IDT read-only In-Reply-To: <20130408224328.GA17641@www.outflux.net> Message-ID: References: <20130408224328.GA17641@www.outflux.net> User-Agent: Alpine 2.03 (LFD 1266 2009-07-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1407 Lines: 32 On Mon, 8 Apr 2013, Kees Cook wrote: > This makes the IDT unconditionally read-only. This primarily removes > the IDT from being a target for arbitrary memory write attacks. It has > an added benefit of also not leaking (via the "sidt" instruction) the > kernel base offset, if it has been relocated. [...] > --- a/arch/x86/kernel/cpu/intel.c > +++ b/arch/x86/kernel/cpu/intel.c > @@ -215,7 +201,6 @@ static void __cpuinit intel_workarounds(struct cpuinfo_x86 *c) > > c->f00f_bug = 1; > if (!f00f_workaround_enabled) { > - trap_init_f00f_bug(); > printk(KERN_NOTICE "Intel Pentium with F0 0F bug - workaround enabled.\n"); > f00f_workaround_enabled = 1; > } FWIW the change looks reasonable to me, however given that that it makes the arrangement unconditional and there is no longer a workaround to enable I think it would make sense to remove the conditional block quoted above altogether, along with the f00f_workaround_enabled variable itself (alternatively "Intel Pentium with F0 0F bug" alone could be printed instead and the name of the variable adjusted to make sense with the new meaning -- up to you to decide). Maciej -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/