Messages in this thread | | | From | Andy Lutomirski <> | Date | Tue, 30 Sep 2014 15:33:20 -0700 | Subject | Re: [PATCH 1/2] x86_64,entry: Filter RFLAGS.NT on entry from userspace |
| |
On Tue, Sep 30, 2014 at 3:27 PM, Thomas Gleixner <tglx@linutronix.de> wrote: > On Tue, 30 Sep 2014, Andy Lutomirski wrote: >> It would certainly be possible to clear NT and retry IRET if IRET >> fails with NT set. This would have no overhead for anything relevant. >> That would be this alternative from my 0/2 email: >> >> - Don't filter NT on sysenter. Instead, filter it on EFI entry >> and modify the IRET code to retry without NT set if NT was set. >> >> Thomas hpa, etc: any thoughts? > > Filter it right away. That's solid and obvious. Anything else is just > complex and prone for future brown paperbag failures.
Yeah, agreed. That's exactly what these patches do, although, if you put them in -tip and want to keep the stable CC, it's probably worth fixing the address (oops).
> > We get the context switch benefit from it, so there is some > compensation for the extra cycles.
If we ever want those cycles back, I bet that the compat sysenter path could be trimmed down a lot. For example, I think that all of the zero-extension stuff is unnecessary now that we have the magic syscall wrappers for all (?) syscalls.
--Andy
| |