Messages in this thread | | | From | Andy Lutomirski <> | Date | Wed, 23 Jul 2014 08:12:32 -0700 | Subject | Re: STI architectural question (and lretq -- I'm not even kidding) |
| |
On Jul 23, 2014 3:49 AM, "Borislav Petkov" <bp@alien8.de> wrote: > > On Tue, Jul 22, 2014 at 06:33:02PM -0700, Andy Lutomirski wrote: > > Of course, this does nothing at all to protect us from #MC after sti > > on return from #MC to userspace, but I think we're screwed regardless > > -- we could just as easily get a second #MC before the sti. Machine > > check broadcast was the worst idea ever. > > Please do not think that a raised #MC means the machine is gone. There > are MC errors which are reported with the exception mechanism and from > which we can and do recover, regardless of broadcasting or not. >
How are we supposed to survive two machine checks in rapid succession? The second will fire as soon as the first one is acked, I imagine. Unless we switch stacks before acking the MCE, the return address of the first one will be lost.
In any event, I'll do a manual fixup for this in my patch.
--Andy
| |