Re: [tip:perfcounters/core] perf_counter: x86: Fix call-chain support to use NMI-safe methods

H. Peter Anvin
2009-06-15T21:09:41Z

Ingo Molnar wrote:
>
> hm, does this really work? Using sysret there would be quite
> tempting. Does anyone know the rough cycle count difference between
> IRET and SYSRET on contemporary hardware?
>
> Also, is SYSRET NMI-invariant? If yes then this would be a quite
> clean all-around solution: on modern hw we'd standardize on doing
> SYSRET from pretty much all the contexts. We'd get a nice speedup
> and also the NMI nested pagefaults fix.
>
> Oh, compat mode. Doesnt SYSRET on Intel CPUs have the problem of not
> being able to switch back to 32-bit user-space?
>

Not sure. SYSRET/SYSEXIT are *not* general return to userspace
solutions in either case; any kind of complex modes and they can't.

And they are, of course, only applicable for returning to userspace. As
such, I don't understand the "NMI invariant" comment.

-hpa