Re: [tip:perfcounters/core] perf_counter: x86: Fix call-chainsupport to use NMI-safe methods

From: Ingo Molnar
Date: Mon Jun 15 2009 - 17:17:10 EST



* Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxx> wrote:

> Just for the sake of making NMI handlers less tricky, supporting
> page faults caused by faulting kernel instructions (rather than
> only supporting explicit faulting from get_user_pages_inatomic)
> would be rather nice design-wise if it only costs 2-3 cycles.
>
> And I would not want to touch the page fault handler itself to
> write the saved cr2 value before the handler exits, because this
> would add a branch on a very hot path.

_That_ path is not hot at all - it's the 'we are in atomic section
and faulted' rare path (laced with an exception table search - which
is extremely slow compared to other bits of the pagefault path).

But ... it's not an issue: a check can be made in the NMI code too,
as we always know about pagefaults there, by virtue of getting
-EFAULT back from the attempted-user-copy.

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