Re: [patch 1/2] x86_64 page fault NMI-safe

Linus Torvalds
2010-07-15T16:49:22Z

On Thu, Jul 15, 2010 at 9:44 AM, Mathieu Desnoyers
<mathieu.desnoyers@efficios.com> wrote:
>
> The first thing that strikes me is that we could be interrupted by a standard
> interrupt on top of the iret instruction below.

No, that can never happen.

Why? Simple: regular interrupts aren't ever enabled in eflags. So the
only kinds of traps we can get are NMI's (that don't follow the normal
rules), and exceptions.

Of course, if there is some trap that re-enables interrupts even if
the trap happened in an interrupt-disabled region, then that would
change things, but that would be a bad bug regardless (and totally
independently of any NMI issues). So in that sense it's a "could
happen", but it's something that would be a totally separate bug.

Linus