diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-07 15:42:58 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-07 15:42:58 -0400 |
| commit | 3b7433b8a8a83c87972065b1852b7dcae691e464 (patch) | |
| tree | 93fa2c003f8baef5ab0733b53bac77961ed5240c /include/trace | |
| parent | 4a386c3e177ca2fbc70c9283d0b46537844763a0 (diff) | |
| parent | 6ee0578b4daaea01c96b172c6aacca43fd9807a6 (diff) | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)
workqueue: mark init_workqueues() as early_initcall()
workqueue: explain for_each_*cwq_cpu() iterators
fscache: fix build on !CONFIG_SYSCTL
slow-work: kill it
gfs2: use workqueue instead of slow-work
drm: use workqueue instead of slow-work
cifs: use workqueue instead of slow-work
fscache: drop references to slow-work
fscache: convert operation to use workqueue instead of slow-work
fscache: convert object to use workqueue instead of slow-work
workqueue: fix how cpu number is stored in work->data
workqueue: fix mayday_mask handling on UP
workqueue: fix build problem on !CONFIG_SMP
workqueue: fix locking in retry path of maybe_create_worker()
async: use workqueue for worker pool
workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead
workqueue: implement unbound workqueue
workqueue: prepare for WQ_UNBOUND implementation
libata: take advantage of cmwq and remove concurrency limitations
workqueue: fix worker management invocation without pending works
...
Fixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in
include/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c
Diffstat (limited to 'include/trace')
| -rw-r--r-- | include/trace/events/workqueue.h | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/include/trace/events/workqueue.h b/include/trace/events/workqueue.h deleted file mode 100644 index d6c974474e70..000000000000 --- a/include/trace/events/workqueue.h +++ /dev/null | |||
| @@ -1,92 +0,0 @@ | |||
| 1 | #undef TRACE_SYSTEM | ||
| 2 | #define TRACE_SYSTEM workqueue | ||
| 3 | |||
| 4 | #if !defined(_TRACE_WORKQUEUE_H) || defined(TRACE_HEADER_MULTI_READ) | ||
| 5 | #define _TRACE_WORKQUEUE_H | ||
| 6 | |||
| 7 | #include <linux/workqueue.h> | ||
| 8 | #include <linux/sched.h> | ||
| 9 | #include <linux/tracepoint.h> | ||
| 10 | |||
| 11 | DECLARE_EVENT_CLASS(workqueue, | ||
| 12 | |||
| 13 | TP_PROTO(struct task_struct *wq_thread, struct work_struct *work), | ||
| 14 | |||
| 15 | TP_ARGS(wq_thread, work), | ||
| 16 | |||
| 17 | TP_STRUCT__entry( | ||
| 18 | __array(char, thread_comm, TASK_COMM_LEN) | ||
| 19 | __field(pid_t, thread_pid) | ||
| 20 | __field(work_func_t, func) | ||
| 21 | ), | ||
| 22 | |||
| 23 | TP_fast_assign( | ||
| 24 | memcpy(__entry->thread_comm, wq_thread->comm, TASK_COMM_LEN); | ||
| 25 | __entry->thread_pid = wq_thread->pid; | ||
| 26 | __entry->func = work->func; | ||
| 27 | ), | ||
| 28 | |||
| 29 | TP_printk("thread=%s:%d func=%pf", __entry->thread_comm, | ||
| 30 | __entry->thread_pid, __entry->func) | ||
| 31 | ); | ||
| 32 | |||
| 33 | DEFINE_EVENT(workqueue, workqueue_insertion, | ||
| 34 | |||
| 35 | TP_PROTO(struct task_struct *wq_thread, struct work_struct *work), | ||
| 36 | |||
| 37 | TP_ARGS(wq_thread, work) | ||
| 38 | ); | ||
| 39 | |||
| 40 | DEFINE_EVENT(workqueue, workqueue_execution, | ||
| 41 | |||
| 42 | TP_PROTO(struct task_struct *wq_thread, struct work_struct *work), | ||
| 43 | |||
| 44 | TP_ARGS(wq_thread, work) | ||
| 45 | ); | ||
| 46 | |||
| 47 | /* Trace the creation of one workqueue thread on a cpu */ | ||
| 48 | TRACE_EVENT(workqueue_creation, | ||
| 49 | |||
| 50 | TP_PROTO(struct task_struct *wq_thread, int cpu), | ||
| 51 | |||
| 52 | TP_ARGS(wq_thread, cpu), | ||
| 53 | |||
| 54 | TP_STRUCT__entry( | ||
| 55 | __array(char, thread_comm, TASK_COMM_LEN) | ||
| 56 | __field(pid_t, thread_pid) | ||
| 57 | __field(int, cpu) | ||
| 58 | ), | ||
| 59 | |||
| 60 | TP_fast_assign( | ||
| 61 | memcpy(__entry->thread_comm, wq_thread->comm, TASK_COMM_LEN); | ||
| 62 | __entry->thread_pid = wq_thread->pid; | ||
| 63 | __entry->cpu = cpu; | ||
| 64 | ), | ||
| 65 | |||
| 66 | TP_printk("thread=%s:%d cpu=%d", __entry->thread_comm, | ||
| 67 | __entry->thread_pid, __entry->cpu) | ||
| 68 | ); | ||
| 69 | |||
| 70 | TRACE_EVENT(workqueue_destruction, | ||
| 71 | |||
| 72 | TP_PROTO(struct task_struct *wq_thread), | ||
| 73 | |||
| 74 | TP_ARGS(wq_thread), | ||
| 75 | |||
| 76 | TP_STRUCT__entry( | ||
| 77 | __array(char, thread_comm, TASK_COMM_LEN) | ||
| 78 | __field(pid_t, thread_pid) | ||
| 79 | ), | ||
| 80 | |||
| 81 | TP_fast_assign( | ||
| 82 | memcpy(__entry->thread_comm, wq_thread->comm, TASK_COMM_LEN); | ||
| 83 | __entry->thread_pid = wq_thread->pid; | ||
| 84 | ), | ||
| 85 | |||
| 86 | TP_printk("thread=%s:%d", __entry->thread_comm, __entry->thread_pid) | ||
| 87 | ); | ||
| 88 | |||
| 89 | #endif /* _TRACE_WORKQUEUE_H */ | ||
| 90 | |||
| 91 | /* This part must be outside protection */ | ||
| 92 | #include <trace/define_trace.h> | ||
