Thread (6 messages) 6 messages, 3 authors, 2023-12-05

Re: [PATCH] tracing: Allow creating instances with specified system events

From: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Date: 2023-11-30 14:59:12
Also in: lkml

On Wed, 29 Nov 2023 10:25:45 -0500
Steven Rostedt [off-list ref] wrote:
On Wed, 29 Nov 2023 23:58:21 +0900
Masami Hiramatsu (Google) [off-list ref] wrote:
quoted
quoted
- Dynamic events had to be specified directly to still allow them to be
  created.  
I have a question about this point. Does this mean the dynamic event files
will be created in the instance which limits the "system"?
For this point, I would like to allow limiting dynamic events on instance too.
If user needs to use specific one, e.g. synthetic, then it is possible to
add it to the filter.
I'm going back and forth on this. Here's my thoughts about it.

Arguments for allowing all dynamic events:

1. There's not many. This code is basically a way to keep the overhead of
   an instance down. By removing all static events, it can substantially lower
   the memory footprint.

   As synthetic events are user created, there shouldn't be too many that
   would cause a memory foot print issue, and the user also has a bit of
   control of what events are created.
Sometimes synthetic event user != instance user. (Only the privileged user
will do, but maybe done by different program.)
2. We have no idea what a user may want to do with those events. What if
   the user wants to see an event in that buffer and creates a synthetic
   event for it? Should the kernel create a policy for that?
I think it is enough to give a choice to user. User can enable events
under synthetic, probes, etc. by mkdir later. IIUC, current implementation
forcibly exposes all dynamic events.
Arguments against defaulting dynamic events in:

1. The list is created in the kernel. The instance is not created by the
   user and thus the kernel could have more control over it.

2. If the user really wants to have dynamic events, they can create another
   instance with the needed events or use the top level.

Hmm, writing this out, I am now leaning more toward not defaulting dynamic
events in. And if we can create a way to dynamically add and remove events
systems from an instance (via mkdir and rmdir), this should not be an issue.
Yeah, that's my point. If we allow all dynamic events, it needs to change the
default behavior later. That will not be consistent.

Thank you,
Anyone else have any thoughts about this?

-- Steve

-- 
Masami Hiramatsu (Google) [off-list ref]
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help