tracing: Add support for recording tgid of tasks
authorJoel Fernandes <joelaf@google.com>
Tue, 27 Jun 2017 02:01:55 +0000 (19:01 -0700)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Tue, 27 Jun 2017 17:30:28 +0000 (13:30 -0400)
commitd914ba37d7145acb9fd3bb23075c2d56e5a44eb6
treeedb1e6c1bfa0f0a92e13e9f891be524a31b23cea
parent83dd14933e33a45e9b366c572e15505982b46845
tracing: Add support for recording tgid of tasks

Inorder to support recording of tgid, the following changes are made:

* Introduce a new API (tracing_record_taskinfo) to additionally record the tgid
  along with the task's comm at the same time. This has has the benefit of not
  setting trace_cmdline_save before all the information for a task is saved.
* Add a new API tracing_record_taskinfo_sched_switch to record task information
  for 2 tasks at a time (previous and next) and use it from sched_switch probe.
* Preserve the old API (tracing_record_cmdline) and create it as a wrapper
  around the new one so that existing callers aren't affected.
* Reuse the existing sched_switch and sched_wakeup probes to record tgid
  information and add a new option 'record-tgid' to enable recording of tgid

When record-tgid option isn't enabled to being with, we take care to make sure
that there's isn't memory or runtime overhead.

Link: http://lkml.kernel.org/r/20170627020155.5139-1-joelaf@google.com
Cc: kernel-team@android.com
Cc: Ingo Molnar <mingo@redhat.com>
Tested-by: Michael Sartain <mikesart@gmail.com>
Signed-off-by: Joel Fernandes <joelaf@google.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
include/linux/trace_events.h
kernel/trace/trace.c
kernel/trace/trace.h
kernel/trace/trace_events.c
kernel/trace/trace_sched_switch.c