Re: [ 05/48] x86_64, switch_to(): Load TLS descriptors before switching DS and ES
From: Ben Hutchings
Date: Fri May 15 2015 - 08:32:41 EST
On Fri, 2015-05-15 at 10:05 +0200, Willy Tarreau wrote:
> 2.6.32-longterm review patch. If anyone has any objections, please let me know.
>
> ------------------
>
> From: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
>
> commit f647d7c155f069c1a068030255c300663516420e upstream.
>
> Otherwise, if buggy user code points DS or ES into the TLS
> array, they would be corrupted after a context switch.
>
> This also significantly improves the comments and documents some
> gotchas in the code.
>
> Before this patch, the both tests below failed. With this
> patch, the es test passes, although the gsbase test still fails.
[...]
This depends on the changes to FPU/MMX/SSE state management that you
didn't apply to 2.6.32. Note this comment:
/* Must be after DS reload */
unlazy_fpu(prev_p);
Ben.
--
Ben Hutchings
It is impossible to make anything foolproof because fools are so ingenious.
Attachment:
signature.asc
Description: This is a digitally signed message part