All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/19] tracing/workqueue: events support/enhancements, worklets tracing, fixes
@ 2009-04-30  0:27 Frederic Weisbecker
  2009-04-30  0:27 ` [PATCH 01/19] ftrace, workqueuetrace: make workqueue tracepoints use TRACE_EVENT macro Frederic Weisbecker
                   ` (19 more replies)
  0 siblings, 20 replies; 23+ messages in thread
From: Frederic Weisbecker @ 2009-04-30  0:27 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: LKML, Li Zefan, Frederic Weisbecker, Zhao Lei, Steven Rostedt,
	Tom Zanussi, Oleg Nesterov, Andrew Morton, KOSAKI Motohiro

Hi,

This patchset brings various features for the workqueue tracer.

The support of events tracing (tracepoint expanding):
	- workqueue_creation
	- workqueue_flush
	- workqueue_destruction

    Also for the worklets:
	- worklet_enqueue
	- worklet_enqueue_delayed
	- worklet_execute
	- worklet_complete
	- worklet_cancel

Now, most of the lifecycle of worklets and workqueues is available.

The histogram tracing now also supports the worklets. You can
measure the max and average execution time of a worklet.

A good bunch of Oleg's comments have been addressed, at least the
critical ones (races which can cause freed pointer dereferences, memory
leak, etc...). The rest is more about the design itself, such as using
the workqueue as the identifier instead of the thread and other things
that are in discussion.

Thanks!

Frederic.

The following changes since commit a0e39ed378fb6ba916522764cd508fa7d42ad495:
  Heiko Carstens (1):
        tracing: fix build failure on s390

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing.git tracing/workqueue

Frederic Weisbecker (6):
      tracing/workqueue: turn cpu_workqueue_stats::inserted into unsigned int
      tracing/workqueue: add execution time average column
      tracing/workqueue: add open/release file handlers
      tracing/workqueue: defer workqueue stat release if needed
      tracing/workqueue: use the original cpu affinity on probe_workqueue_destruction
      tracing/workqueue: provide documentation for the workqueue tracer

KOSAKI Motohiro (2):
      workqueue_tracepoint: introduce workqueue_handler_exit tracepoint and rename workqueue_execution to workqueue_handler_entry
      tracing/workqueue: add max execution time mesurement for per worklet

Zhaolei (11):
      ftrace, workqueuetrace: make workqueue tracepoints use TRACE_EVENT macro
      trace_workqueue: use list_for_each_entry() instead of list_for_each_entry_safe()
      trace_workqueue: remove cpu_workqueue_stats->first_entry
      trace_workqueue: remove blank line between each cpu
      trace_workqueue: add worklet information
      workqueue_tracepoint: add workqueue_flush and worklet_cancel tracepoint
      workqueue_tracepoint: change tracepoint name to fit worklet and workqueue lifecycle
      workqueue_trace: separate worklet_insertion into worklet_enqueue and worklet_enqueue_delayed
      tracing/workqueue: turn workfunc_stats::inserted into unsigned int
      tracing/workqueue: avoid accessing task_struct's member variable in stat file read
      tracing/workqueue: use list_for_each_entry instead of list_for_each_entry_safe in probe_workqueue_destruction()

 Documentation/trace/workqueue.txt |  114 ++++++++++
 include/trace/events/workqueue.h  |  200 +++++++++++++++++
 include/trace/workqueue.h         |   25 --
 kernel/trace/trace_stat.c         |    8 +
 kernel/trace/trace_stat.h         |    3 +
 kernel/trace/trace_workqueue.c    |  444 +++++++++++++++++++++++++++++--------
 kernel/workqueue.c                |   45 +++--
 7 files changed, 697 insertions(+), 142 deletions(-)
 create mode 100644 Documentation/trace/workqueue.txt
 create mode 100644 include/trace/events/workqueue.h
 delete mode 100644 include/trace/workqueue.h

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2009-04-30 12:48 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-30  0:27 [PATCH 00/19] tracing/workqueue: events support/enhancements, worklets tracing, fixes Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 01/19] ftrace, workqueuetrace: make workqueue tracepoints use TRACE_EVENT macro Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 02/19] trace_workqueue: use list_for_each_entry() instead of list_for_each_entry_safe() Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 03/19] trace_workqueue: remove cpu_workqueue_stats->first_entry Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 04/19] trace_workqueue: remove blank line between each cpu Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 05/19] trace_workqueue: add worklet information Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 06/19] tracing/workqueue: turn cpu_workqueue_stats::inserted into unsigned int Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 07/19] workqueue_tracepoint: introduce workqueue_handler_exit tracepoint and rename workqueue_execution to workqueue_handler_entry Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 08/19] workqueue_tracepoint: add workqueue_flush and worklet_cancel tracepoint Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 09/19] workqueue_tracepoint: change tracepoint name to fit worklet and workqueue lifecycle Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 10/19] workqueue_trace: separate worklet_insertion into worklet_enqueue and worklet_enqueue_delayed Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 11/19] tracing/workqueue: turn workfunc_stats::inserted into unsigned int Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 12/19] tracing/workqueue: avoid accessing task_struct's member variable in stat file read Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 13/19] tracing/workqueue: use list_for_each_entry instead of list_for_each_entry_safe in probe_workqueue_destruction() Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 14/19] tracing/workqueue: add max execution time mesurement for per worklet Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 15/19] tracing/workqueue: add execution time average column Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 16/19] tracing/workqueue: add open/release file handlers Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 17/19] tracing/workqueue: defer workqueue stat release if needed Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 18/19] tracing/workqueue: use the original cpu affinity on probe_workqueue_destruction Frederic Weisbecker
2009-04-30  0:27 ` [PATCH 19/19] tracing/workqueue: provide documentation for the workqueue tracer Frederic Weisbecker
2009-04-30  1:19   ` KOSAKI Motohiro
2009-04-30  8:45 ` [PATCH 00/19] tracing/workqueue: events support/enhancements, worklets tracing, fixes Ingo Molnar
2009-04-30 12:48   ` Frederic Weisbecker

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.