diff options
author | Beau Belgrave <beaub@linux.microsoft.com> | 2023-03-29 02:52:11 +0300 |
---|---|---|
committer | Steven Rostedt (Google) <rostedt@goodmis.org> | 2023-03-29 13:52:08 +0300 |
commit | 81f8fb65499817a4d1d5d66d9e74a903061ce637 (patch) | |
tree | 99c66831259ddb194f149150a1858efa1a7f764e /tools/perf/scripts/python/exported-sql-viewer.py | |
parent | 7235759084a4f8524a46bd2638885ff3b34ce279 (diff) | |
download | linux-81f8fb65499817a4d1d5d66d9e74a903061ce637.tar.xz |
tracing/user_events: Fixup enable faults asyncly
When events are enabled within the various tracing facilities, such as
ftrace/perf, the event_mutex is held. As events are enabled pages are
accessed. We do not want page faults to occur under this lock. Instead
queue the fault to a workqueue to be handled in a process context safe
way without the lock.
The enable address is marked faulting while the async fault-in occurs.
This ensures that we don't attempt to fault-in more than is necessary.
Once the page has been faulted in, an address write is re-attempted.
If the page couldn't fault-in, then we wait until the next time the
event is enabled to prevent any potential infinite loops.
Link: https://lkml.kernel.org/r/20230328235219.203-5-beaub@linux.microsoft.com
Signed-off-by: Beau Belgrave <beaub@linux.microsoft.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Diffstat (limited to 'tools/perf/scripts/python/exported-sql-viewer.py')
0 files changed, 0 insertions, 0 deletions