mbox series

[0/1] tracing/user_events: Initial support for grouping

Message ID 20221001001016.2832-1-beaub@linux.microsoft.com (mailing list archive)
Headers show
Series tracing/user_events: Initial support for grouping | expand

Message

Beau Belgrave Oct. 1, 2022, 12:10 a.m. UTC
In order to enable namespaces, or any sort of isolation, within
user_events the register lock and pages need to be broken up into
groups. Each event and file now has a group pointer which stores
the actual pages to map, lookup data and synchronization objects.

There's been some previous discussion about this both in the
tracefs meetings as well as on the mailing lists:
Link: https://lore.kernel.org/all/20220312010140.1880-1-beaub@linux.microsoft.com/
Link: https://lore.kernel.org/all/20220425184631.2068-1-beaub@linux.microsoft.com/

This was also brought up in the most recent plumbers conference,
with some feedback to follow the IMA namespace model. This only enables
a single group that maps to init_user_ns, as IMA namespace has done.

Link: https://youtu.be/zai3gvpuEHc?t=4403
Link: https://lore.kernel.org/linux-kernel/20220915193221.1728029-15-stefanb@linux.ibm.com/#t

While it's not clear what all needs to be within a tracing namespace,
we have to start somewhere. The patch leaves out how new namespaces
are created and further configured by an operator. However, it
offers a structure and the minimum scaffolding to enable isolation
while we discuss this in further detail and build upon this in steps.

Beau Belgrave (1):
  tracing/user_events: Move pages/locks into groups to prepare for
    namespaces

 kernel/trace/trace_events_user.c | 346 ++++++++++++++++++++++++-------
 1 file changed, 274 insertions(+), 72 deletions(-)


base-commit: c23cbf0d23145ffd0f99520a5c1d65abba628936