[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.20.1711202152350.2348@nanos>
Date: Mon, 20 Nov 2017 21:54:13 +0100 (CET)
From: Thomas Gleixner <tglx@...utronix.de>
To: Andy Lutomirski <luto@...nel.org>
cc: Dave Hansen <dave.hansen@...ux.intel.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
moritz.lipp@...k.tugraz.at,
Daniel Gruss <daniel.gruss@...k.tugraz.at>,
michael.schwarz@...k.tugraz.at, richard.fellner@...dent.tugraz.at,
Linus Torvalds <torvalds@...ux-foundation.org>,
Kees Cook <keescook@...gle.com>,
Hugh Dickins <hughd@...gle.com>, X86 ML <x86@...nel.org>
Subject: Re: [PATCH 17/30] x86, kaiser: map debug IDT tables
On Mon, 20 Nov 2017, Andy Lutomirski wrote:
> On Fri, Nov 10, 2017 at 11:31 AM, Dave Hansen
> <dave.hansen@...ux.intel.com> wrote:
> >
> > From: Dave Hansen <dave.hansen@...ux.intel.com>
> >
> > The IDT is another structure which the CPU references via a
> > virtual address. It also obviously needs these to handle an
> > interrupt in userspace, so these need to be mapped into the user
> > copy of the page tables.
>
> Why would the debug IDT ever be used in user mode? IIRC it's a total
> turd related to avoiding crap nesting inside NMI. Or am I wrong?
No. It's called from the TRACE_IRQS macros in the ASM entry code and from
do_nmi().
> If it *is* used in user mode, then we have a bug and it should be in
> the IDT to avoid address leaks just like the normal IDT.
It's not so this can go away. Good catch.
Thanks,
tglx
Powered by blists - more mailing lists