Re: [PATCH 14/15] x86/fsgsbase/64: Support legacy behavior when FS/GS updated by ptracer

From: Andy Lutomirski
Date: Thu Mar 22 2018 - 17:28:33 EST


On Thu, Mar 22, 2018 at 9:17 PM, Bae, Chang Seok
<chang.seok.bae@xxxxxxxxx> wrote:
>
> ________________________________________
> From: Andy Lutomirski [luto@xxxxxxxxxx]
> Sent: Thursday, March 22, 2018 09:53
>>>> But your patch doesn't actually do this, since gdb will just do
>>>> SETREGS anyway, right?
>>> GDB does SETREGS on any exclusive (FS/GS) updates in inferior call.
>
>> This means that your patch has exactly the same effect as the code in
>> my git tree, right? Then let's stick with something like what's in my
>> git tree, since it's far simpler.
>
> Difference is if flipping FS/GS multiple times, user may check the base from LDT.
> But I don't have strong will to keep arguing this; Markus or somebody might
> want to say something.
>
> The whole point as I understand is to avoid any regression on legacy ptracers.
> If a strong confidence lies on the simple version, let me. My first thought bought
> this in fact.

I agree that we want to avoid regressions, but you seem to have
discovered that basically all ptracers() use SETREGS. Your patch
behaves the same as the simple patch if SETREGS is used.

>
> Thanks,
> Chang