Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1283117

[GIT PULL] tracing: Add sched_wakeup_new and sched_waking tracepoints for pid filter

Path csiph.com!eternal-september.org!feeder.eternal-september.org!aioe.org!bofh.it!news.nic.it!robomod
From Steven Rostedt <rostedt@goodmis.org>
Newsgroups linux.kernel
Subject [GIT PULL] tracing: Add sched_wakeup_new and sched_waking tracepoints for pid filter
Date Thu, 03 Dec 2015 16:20:01 +0100
Message-ID <qBDPP-6Rh-9@gated-at.bofh.it> (permalink)
X-Original-To Linus Torvalds <torvalds@linux-foundation.org>
X-Session-Marker 726F737465647440676F6F646D69732E6F7267
X-Spam-Summary 2,0,0,,d41d8cd98f00b204,rostedt@goodmis.org,:::::::,RULES_HIT:41:69:355:379:541:800:960:973:988:989:1260:1277:1311:1313:1314:1345:1437:1515:1516:1518:1534:1543:1593:1594:1711:1730:1747:1777:1792:2393:2553:2559:2562:2693:3138:3139:3140:3141:3142:3354:3865:3866:3867:3868:3870:3871:3872:3874:4321:4605:5007:6261:7903:9010:9121:10004:10400:10848:11026:11233:11473:11658:11914:12043:12262:12266:12296:12438:12517:12519:12555:12679:12740:13161:13184:13229:13255:13972:14096:14097:14659:21080:21222,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:fn,MSBL:0,DNSBL:none,Custom_rules:0:0:0,LFtime:2,LUA_SUMMARY:none
X-He-Tag stem73_3ed5322506c39
X-Filterd-Recvd-Size 4257
X-Mailer Claws Mail 3.13.0 (GTK+ 2.24.28; x86_64-pc-linux-gnu)
MIME-Version 1.0
Content-Type text/plain; charset=US-ASCII
Content-Transfer-Encoding 7bit
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 88
Organization linux.* mail to news gateway
X-Original-Cc LKML <linux-kernel@vger.kernel.org>, Ingo Molnar <mingo@kernel.org>, Andrew Morton <akpm@linux-foundation.org>
X-Original-Date Thu, 3 Dec 2015 10:10:30 -0500
X-Original-Message-ID <20151203101030.6c920828@gandalf.local.home>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1283117

Show key headers only | View raw


Linus,

During the merge window I added a new file that is used to filter trace
events on pids. It filters all events where only tasks with their pid in that
file exists. It also handles the sched_switch and sched_wakeup trace events
where the current task does not have its pid in the file, but the task
either being switched to or awaken does.

Unfortunately, I forgot about sched_wakeup_new and sched_waking. Both of
these tracepoints use the same class as the sched_wakeup tracepoint, and
they too should be included in what gets filtered by the set_event_pid file.


Please pull the latest trace-v4.4-rc3 tree, which can be found at:


  git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git
trace-v4.4-rc3

Tag SHA1: a2ad0a8da5f76e9209f709a7f39b80647ee69689
Head SHA1: 0f72e37e42a8ce427caa1b96f7f51e450f2ecb82


Steven Rostedt (Red Hat) (1):
      tracing: Add sched_wakeup_new and sched_waking tracepoints for pid filter

----
 kernel/trace/trace_events.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
---------------------------
commit 0f72e37e42a8ce427caa1b96f7f51e450f2ecb82
Author: Steven Rostedt (Red Hat) <rostedt@goodmis.org>
Date:   Tue Dec 1 16:08:05 2015 -0500

    tracing: Add sched_wakeup_new and sched_waking tracepoints for pid filter
    
    The set_event_pid filter relies on attaching to the sched_switch and
    sched_wakeup tracepoints to see if it should filter the tracing on schedule
    tracepoints. By adding the callbacks to sched_wakeup, pids in the
    set_event_pid file will trace the wakeups of those tasks with those pids.
    
    But sched_wakeup_new and sched_waking were missed. These two should also be
    traced. Luckily, these tracepoints share the same class as sched_wakeup
    which means they can use the same pre and post callbacks as sched_wakeup
    does.
    
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>

diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index 6bbc5f652355..4f6ef6912e00 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -582,6 +582,12 @@ static void __ftrace_clear_event_pids(struct trace_array *tr)
 	unregister_trace_sched_wakeup(event_filter_pid_sched_wakeup_probe_pre, tr);
 	unregister_trace_sched_wakeup(event_filter_pid_sched_wakeup_probe_post, tr);
 
+	unregister_trace_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_pre, tr);
+	unregister_trace_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_post, tr);
+
+	unregister_trace_sched_waking(event_filter_pid_sched_wakeup_probe_pre, tr);
+	unregister_trace_sched_waking(event_filter_pid_sched_wakeup_probe_post, tr);
+
 	list_for_each_entry(file, &tr->events, list) {
 		clear_bit(EVENT_FILE_FL_PID_FILTER_BIT, &file->flags);
 	}
@@ -1729,6 +1735,16 @@ ftrace_event_pid_write(struct file *filp, const char __user *ubuf,
 						 tr, INT_MAX);
 		register_trace_prio_sched_wakeup(event_filter_pid_sched_wakeup_probe_post,
 						 tr, 0);
+
+		register_trace_prio_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_pre,
+						     tr, INT_MAX);
+		register_trace_prio_sched_wakeup_new(event_filter_pid_sched_wakeup_probe_post,
+						     tr, 0);
+
+		register_trace_prio_sched_waking(event_filter_pid_sched_wakeup_probe_pre,
+						 tr, INT_MAX);
+		register_trace_prio_sched_waking(event_filter_pid_sched_wakeup_probe_post,
+						 tr, 0);
 	}
 
 	/*
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[GIT PULL] tracing: Add sched_wakeup_new and sched_waking  tracepoints for pid filter Steven Rostedt <rostedt@goodmis.org> - 2015-12-03 16:20 +0100

csiph-web