Messages in this thread | | | From | Andy Lutomirski <> | Date | Thu, 23 Apr 2015 15:38:47 -0700 | Subject | Re: [PATCH] x86/asm/entry/32: Restore %ss before SYSRETL if necessary |
| |
On Thu, Apr 23, 2015 at 3:31 PM, H. Peter Anvin <hpa@zytor.com> wrote: > On 04/23/2015 03:29 PM, Andy Lutomirski wrote: >>> >>> Yes, the NULL SS is a special thing in 64-bit mode. I agree that >>> context-switching it is probably the way to go; it should be cheap >>> enough. We might even be able to conditionalize it on an X86_BUG_ flag. >> >> I still don't see why context switches are a better place than just >> before sysret, but I could be convinced. >> > > Because there are way more sysrets than context switches, and Linux is > particularly sensitive to system call latency, by design.
I mean sysret but only when SS might be zero. Denys' approach apparently needs ~4 cycles to check that (not bad), we could (yuck) set a ti flag on context switch.
But yes, maybe you're right.
--Andy
| |