[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <5957D3CC-B54B-4A1A-998A-0E6F58589CF4@amacapital.net>
Date: Tue, 21 Apr 2020 13:21:39 -0700
From: Andy Lutomirski <luto@...capital.net>
To: Andi Kleen <ak@...ux.intel.com>
Cc: Sasha Levin <sashal@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Andy Lutomirski <luto@...nel.org>,
"Bae, Chang Seok" <chang.seok.bae@...el.com>,
"Metzger, Markus T" <markus.t.metzger@...el.com>,
"hpa@...or.com" <hpa@...or.com>, "bp@...en8.de" <bp@...en8.de>,
"Hansen, Dave" <dave.hansen@...el.com>,
"Luck, Tony" <tony.luck@...el.com>,
Pedro Alves <palves@...hat.com>,
Simon Marchi <simark@...ark.ca>,
"Shankar, Ravi V" <ravi.v.shankar@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v9 00/17] Enable FSGSBASE instructions
> On Apr 21, 2020, at 12:56 PM, Andi Kleen <ak@...ux.intel.com> wrote:
>
>
>>
>> Andi's point is that there is no known user it breaks, and the Intel
>> folks did some digging into potential users who might be affected by
>> this, including 'rr' brought up by Andy, and concluded that there won't
>> be breakage as a result of this patchset:
>>
>> https://mail.mozilla.org/pipermail/rr-dev/2018-March/000616.html
>>
>> Sure, if you poke at it you could see a behavior change, but is there
>> an actual user that will be affected by it? I suspect not.
>
> Actually we don't know of any behavior changes caused by the kernel
> with selectors.
>
> The application can change itself of course, but only if it uses the
> new instructions, which no current application does.
If you use ptrace to change the gs selector, the behavior is different on a patched kernel.
Again, I’m not saying that the change is problematic. But I will say that the fact that anyone involved in this series keeps ignoring this fact makes me quite uncomfortable with the patch set.
>
> [This was different in the original patch kit long ago which could
> change behavior on context switch for programs with out of sync selectors,
> but this has been long fixed]
That’s the issue I was referring to.
>
> A debugger can also change behavior, but we're not aware of any case
> that it would break.
How hard did you look?
>
> For rr or criu we're also not aware of any case that could break.
>
> I honestly don't know what else could be done in due diligence.
>
> Also just to reiterate merging this would immediately shave off
> hundreds of cycles in most context switches.
>
> -Andi
Powered by blists - more mailing lists