Re: [GIT pull] x86 mpx support for 3.19

From: Dave Hansen
Date: Wed Dec 10 2014 - 21:30:23 EST


On 12/10/2014 06:14 PM, Eric W. Biederman wrote:
> Thomas Gleixner <tglx@xxxxxxxxxxxxx> writes:
>> please pull the latest x86-mpx-for-linus git tree from:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-mpx-for-linus
>>
>> This enables support for x86 MPX:
>>
>> MPX is a new debug feature for bound checking in user space. It
>> requires kernel support to handle the bound tables and decode the
>> bound violating instruction in the trap handler.
>
> I some really dumb questions.
>
> Given that mpx is both architecture and cpu specific why use prctl?
> I would think arch_prctl would be a much more appropriate place to
> expose this logic.

I actually never considered arch_prctl(). It doesn't seem a bad fit for
any reason, just that I never thought of it and no one suggested it up
to this point.

Is there any *real* advantage to arch_prctl()? We have some gcc code
that's going to be using these prctls and if we need to change the
interface, we've got to get that code changed too... fast.

> Why don't you have a call to let an application query to see if mpx
> management is enabled? I am trying to imagine how checkpoint/restart is
> going to be supported for mpx applications. If I can't even query if
> mpx is enabled I don't have a clue how we could save this state and
> duplicate it in another process on another machine.

You probably need to actually save off the contents of mm->bd_addr
itself. I guess you can do it along with all the other internals of the
mm that get saved off currently.
--
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/