Re: [PATCH v3 0/4] Intel MPX support

From: Ren Qiaowei
Date: Tue Jan 28 2014 - 02:07:03 EST


On 01/28/2014 02:42 PM, Ingo Molnar wrote:

* Ren Qiaowei <qiaowei.ren@xxxxxxxxx> wrote:

MPX kernel code, namely this patchset, has mainly the 2
responsibilities: provide handlers for bounds faults (#BR), and
manage bounds memory.

AFAICS the kernel side implementation causes no runtime overhead
for non-MPX workloads, and also causes no runtime overhead for
non-MPX hardware, right?

Yes.

Actually, I think that's not entirely true.

For example if within the same mm there's a lot of non-MPX threads and
an MPX thread, then the MMU notifier will be called for MMU operations
of every non-MPX thread as well!

So MPX state of a thread will slow down all the other non-MPX threads
as well.

The statement is only true for non-MPX tasks that have their separate
mm's that does not have a single MPX thread.


Yes. Though all non-MPX threads are slowed down, the whole process benefit from MPX.

Anyway, HPA suggest these syscalls, which use MMU notifier, should be not needed, we can do what they do in userspace runtime. What do you think about it? I guess that I should remove the third patch which adds new prctl() syscalls in next version of this patchset.

Thanks,
Qiaowei
--
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/