Re: [PATCH 3.19 3/3] x86, mpx: Change the MPX enable/disable API to arch_prctl

From: Andy Lutomirski
Date: Tue Jan 06 2015 - 13:42:14 EST


On Tue, Jan 6, 2015 at 10:30 AM, Dave Hansen
<dave.hansen@xxxxxxxxxxxxxxx> wrote:
> On 01/06/2015 10:06 AM, Andy Lutomirski wrote:
>> On Tue, Jan 6, 2015 at 9:48 AM, Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> wrote:
>>> On 01/05/2015 09:59 PM, Andy Lutomirski wrote:
>>>> But I decided to check whether libmpx links against glibc, and I can't
>>>> find sources for it at all. Do they exist? Is there any code with
>>>> source available that invokes this prctl?
>>>>
>>>> If not, I personally have very little sympathy for the argument that a
>>>> binary buried in the depths of the Intel SDE would need to change if
>>>> we switched to using arch_prctl. And I think that it should issue the
>>>> syscall itself without using glibc, in which case the syscall wrapper
>>>> issue is moot.
>>>
>>> Andy, as I mentioned previously, there is code in a GCC branch that uses
>>> the existing prctl(). It's also been posted for review to one of the
>>> GCC mailing lists. I've been told that it will be in gcc 5.0.
>>
>> Can you point me to it? I found the code generation stuff in the gcc
>> branch, but I couldn't find the runtime.
>
> cc'ing Ilya who is working on the gcc parts...
>
> Ilya, is the MPX runtime that uses the prctl() calls available somewhere
> publicly that it can be grabbed?
>
> I couldn't find it in GCC SVN anywhere.
>
>>> The Intel SDE does not use the prctl() in any way that I know of.
>>
>> I found a couple references suggesting that libmpx lived in the SDE.
>> For example:
>>
>> https://software.intel.com/en-us/articles/using-intel-mpx-with-the-intel-software-development-emulator
>
> Andy, I think you're mistaken. The SDE allows you to run MPX code on a
> system without MPX support in hardware. It does not, itself, provide
> MPX code. The references you see there are to a runtime library that
> you obtain separately from the SDE. You run the library _under_ the SDE.
>

I misread this:

There are two shared objects in the runtime kit available on the SDE page.

The runtime seems to be here:

https://software.intel.com/protected-download/267266/144917

but I'm not going to accept the EULA.

--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/