All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Masami Hiramatsu <mhiramat@kernel.org>
Subject: [for-next][PATCH 16/19] tools/bootconfig: Use per-group/all enable option in ftrace2bconf script
Date: Tue, 17 Aug 2021 15:42:23 -0400	[thread overview]
Message-ID: <20210817194305.555815365@goodmis.org> (raw)
In-Reply-To: 20210817194207.947725935@goodmis.org

From: Masami Hiramatsu <mhiramat@kernel.org>

Use per-group/all enable option instead of ftrace.events option.
This will make the bootconfig file more readable.

Link: https://lkml.kernel.org/r/162856129436.203126.12462564671412940618.stgit@devnote2

Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
 tools/bootconfig/scripts/ftrace2bconf.sh | 24 ++++++++++++++++++------
 1 file changed, 18 insertions(+), 6 deletions(-)

diff --git a/tools/bootconfig/scripts/ftrace2bconf.sh b/tools/bootconfig/scripts/ftrace2bconf.sh
index a0c3bcc6da4f..fbaf07dc91bf 100755
--- a/tools/bootconfig/scripts/ftrace2bconf.sh
+++ b/tools/bootconfig/scripts/ftrace2bconf.sh
@@ -92,6 +92,10 @@ referred_vars() {
 	grep "^hist" $1/trigger | grep -o '$[a-zA-Z0-9]*'
 }
 
+event_is_enabled() { # enable-file
+	test -f $1 & grep -q "1" $1
+}
+
 per_event_options() { # event-dir
 	evdir=$1
 	# Check the special event which has no filter and no trigger
@@ -113,7 +117,9 @@ per_event_options() { # event-dir
 		emit_kv $PREFIX.event.$group.$event.actions += \'$action\'
 	done
 
-	# enable is not checked; this is done by set_event in the instance.
+	if [ $GROUP_ENABLED -eq 0 ] && event_is_enabled $evdir/enable; then
+		emit_kv $PREFIX.event.$group.$event.enable
+	fi
 	val=`cat $evdir/filter`
 	if [ "$val" != "none" ]; then
 		emit_kv $PREFIX.event.$group.$event.filter = "$val"
@@ -137,8 +143,19 @@ event_options() {
 		kprobe_event_options
 		synth_event_options
 	fi
+	ALL_ENABLED=0
+	if event_is_enabled $INSTANCE/events/enable; then
+		emit_kv $PREFIX.event.enable
+		ALL_ENABLED=1
+	fi
 	for group in `ls $INSTANCE/events/` ; do
 		[ ! -d $INSTANCE/events/$group ] && continue
+		GROUP_ENABLED=$ALL_ENABLED
+		if [ $ALL_ENABLED -eq 0 ] && \
+		   event_is_enabled $INSTANCE/events/$group/enable ;then
+			emit_kv $PREFIX.event.$group.enable
+			GROUP_ENABLED=1
+		fi
 		for event in `ls $INSTANCE/events/$group/` ;do
 			[ ! -d $INSTANCE/events/$group/$event ] && continue
 			per_event_options $INSTANCE/events/$group/$event
@@ -226,11 +243,6 @@ instance_options() { # [instance-name]
 		emit_kv $PREFIX.tracing_on = $val
 	fi
 
-	val=
-	for i in `cat $INSTANCE/set_event`; do
-		val="$val, $i"
-	done
-	[ "$val" ] && emit_kv $PREFIX.events = "${val#,}"
 	val=`cat $INSTANCE/current_tracer`
 	[ $val != nop ] && emit_kv $PREFIX.tracer = $val
 	if grep -qv "^#" $INSTANCE/set_ftrace_filter $INSTANCE/set_ftrace_notrace; then
-- 
2.30.2

  parent reply	other threads:[~2021-08-17 19:43 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-17 19:42 [for-next][PATCH 00/19] tracing: Updates for 5.15 Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 01/19] tracing/boot: Fix a hist trigger dependency for boot time tracing Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 02/19] tracing: Add linear buckets to histogram logic Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 03/19] tracing/histogram: Update the documentation for the buckets modifier Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 04/19] tracing: Have histogram types be constant when possible Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 05/19] tracing: Allow execnames to be passed as args for synthetic events Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 06/19] tracing: Simplify the Kconfig dependency of FTRACE Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 08/19] tracing: Fix a typo in tracepoint.h Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 09/19] tracing/boot: Add per-event histogram action options Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 10/19] tracing/boot: Support multiple handlers for per-event histogram Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 11/19] tracing/boot: Support multiple histograms for each event Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 12/19] tracing/boot: Show correct histogram error command Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 13/19] Documentation: tracing: Add histogram syntax to boot-time tracing Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 14/19] tools/bootconfig: Support per-group/all event enabling option Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 15/19] tools/bootconfig: Add histogram syntax support to bconf2ftrace.sh Steven Rostedt
2021-08-17 19:42 ` Steven Rostedt [this message]
2021-08-17 19:42 ` [for-next][PATCH 17/19] bootconfig/tracing/ktest: Update ktest example for boot-time tracing Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 18/19] tracepoint: Fix kerneldoc comments Steven Rostedt
2021-08-17 19:42 ` [for-next][PATCH 19/19] MAINTAINERS: Add an entry for os noise/latency Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210817194305.555815365@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=mingo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.