tracing/user_events: Add ioctl for disabling addresses
authorBeau Belgrave <beaub@linux.microsoft.com>
Tue, 28 Mar 2023 23:52:12 +0000 (16:52 -0700)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Wed, 29 Mar 2023 10:52:08 +0000 (06:52 -0400)
commitdcb8177c13953872c9e5ce4a99b63a87a3c2f683
treea5b552e9688432c2d5bf0ccf3f2ce26afb479467
parent81f8fb65499817a4d1d5d66d9e74a903061ce637
tracing/user_events: Add ioctl for disabling addresses

Enablements are now tracked by the lifetime of the task/mm. User
processes need to be able to disable their addresses if tracing is
requested to be turned off. Before unmapping the page would suffice.
However, we now need a stronger contract. Add an ioctl to enable this.

A new flag bit is added, freeing, to user_event_enabler to ensure that
if the event is attempted to be removed while a fault is being handled
that the remove is delayed until after the fault is reattempted.

Link: https://lkml.kernel.org/r/20230328235219.203-6-beaub@linux.microsoft.com
Signed-off-by: Beau Belgrave <beaub@linux.microsoft.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
include/uapi/linux/user_events.h
kernel/trace/trace_events_user.c