* 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.