Messages in this thread | | | Date | Thu, 27 Feb 2014 18:30:08 -0500 | From | Steven Rostedt <> | Subject | Re: perf_fuzzer compiled for x32 causes reboot |
| |
On Thu, 27 Feb 2014 14:52:54 -0800 "H. Peter Anvin" <hpa@zytor.com> wrote:
> On 02/27/2014 02:31 PM, Steven Rostedt wrote: > > > > Yeah, something is getting mesed up. > > > > What it *looks* like to me is that we try to nest the cr2 save/restore, > which doesn't nest because it is a percpu variable. > > ... except in the x86-64 case, we *ALSO* save/restore cr2 inside > entry_64.S, which makes the stuff in do_nmi completely redundant and > there for no good reason.
Peter, look at the code. That percpu cr2 is in a #ifdef CONFIG_X86_32 section. That is, it isn't even executed. That's i386 code. The only place the cr2 is saved for x86_64 is in entry_64.S.
-- Steve
> > I would actually suggest we do the equivalent on i386 as well. > > Vince, could you try this patch as an experiment? > >
| |