Re: [PATCH] x86/asm/entry/32: Restore %ss before SYSRETL if necessary

From: Andy Lutomirski
Date: Thu Apr 23 2015 - 18:39:16 EST


On Thu, Apr 23, 2015 at 3:31 PM, H. Peter Anvin <hpa@xxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/