Messages in this thread | | | Date | Wed, 21 May 2014 16:20:55 +0200 | From | Borislav Petkov <> | Subject | Re: 64bit x86: NMI nesting still buggy? |
| |
On Wed, May 21, 2014 at 03:42:24PM +0200, Jiri Kosina wrote: > Alright, Andy's iret optimization efforts do immediately bring a > followup question -- why is this not a problem with iret-based return > from #MC possibly interrupting NMI?
Yeah, and frankly, I don't see this nesting fun at all protected against a #MC interrupting it at any point actually. Because once the #MC handler returns, it goes into paranoid_exit and that place doesn't account for NMIs at all, AFAICS.
Which would mean:
* NMI goes off * MCE happens, we switch to machine_check which is paranoidzeroentry * #MC handler is done -> paranoid_exit -> IRET -> boom! Or if not "boom", at least, the NMI gets forgotten.
Am I missing something?
-- Regards/Gruss, Boris.
Sent from a fat crate under my desk. Formatting is fine. --
| |