linux-stable/kernel/trace
Tao Ma 805f6b5e1c blktrace: Use rq->cmd_flags directly in blk_add_trace_rq.
In blk_add_trace_rq, we only chose the minor 2 bits from
request's cmd_flags and did some check for discard.
so most of other flags(e.g, REQ_SYNC) are missing.

For example, with a sync write after blkparse we get:
  8,16   1        1     0.001776503  7509  A  WS 1349632 + 1024 <- (8,17) 1347584
  8,16   1        2     0.001776813  7509  Q  WS 1349632 + 1024 [dd]
  8,16   1        3     0.001780395  7509  G  WS 1349632 + 1024 [dd]
  8,16   1        5     0.001783186  7509  I   W 1349632 + 1024 [dd]
  8,16   1       11     0.001816987  7509  D   W 1349632 + 1024 [dd]
  8,16   0        2     0.006218192     0  C   W 1349632 + 1024 [0]

Since now we have integrated the flags of both bio and request,
it is safe to pass rq->cmd_flags directly to __blk_add_trace.

With this patch, after a sync write we get:
  8,16   1        1     0.001776900  5425  A  WS 1189888 + 1024 <- (8,17) 1187840
  8,16   1        2     0.001777179  5425  Q  WS 1189888 + 1024 [dd]
  8,16   1        3     0.001780797  5425  G  WS 1189888 + 1024 [dd]
  8,16   1        5     0.001783402  5425  I  WS 1189888 + 1024 [dd]
  8,16   1       11     0.001817468  5425  D  WS 1189888 + 1024 [dd]
  8,16   0        2     0.005640709     0  C  WS 1189888 + 1024 [0]

Signed-off-by: Tao Ma <boyu.mt@taobao.com>
Acked-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-03-11 20:11:59 +01:00
..
blktrace.c blktrace: Use rq->cmd_flags directly in blk_add_trace_rq. 2011-03-11 20:11:59 +01:00
ftrace.c Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
Kconfig perf: Clean up power events by introducing new, more generic ones 2011-01-04 08:16:54 +01:00
Makefile tracing: Fix TRACE_EVENT power tracepoint creation 2011-01-07 23:26:29 -05:00
power-traces.c perf: Clean up power events by introducing new, more generic ones 2011-01-04 08:16:54 +01:00
ring_buffer.c ring_buffer: Off-by-one and duplicate events in ring_buffer_read_page 2010-12-23 12:09:30 -05:00
ring_buffer_benchmark.c
trace.c tracing: Fix preempt count leak 2011-01-07 23:20:02 -05:00
trace.h tracing: Make graph related irqs/preemptsoff functions global 2010-10-18 10:53:28 -04:00
trace_branch.c
trace_clock.c
trace_entries.h tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
trace_event_perf.c tracing: New flag to allow non privileged users to use a trace event 2010-11-18 14:37:40 +01:00
trace_events.c tracing: Replace trace_event struct array with pointer array 2011-02-02 21:37:13 -05:00
trace_events_filter.c
trace_export.c tracing: Replace trace_event struct array with pointer array 2011-02-02 21:37:13 -05:00
trace_functions.c
trace_functions_graph.c tracing: Remove parent recording in latency tracer graph options 2010-10-18 10:53:38 -04:00
trace_irqsoff.c lockdep: Move early boot local IRQ enable/disable status to init/main.c 2011-01-20 13:32:33 +01:00
trace_kdb.c kdb,ftdump: Remove reference to internal kdb include 2010-10-22 15:34:11 -05:00
trace_kprobe.c Remove duplicate includes from many files 2010-10-27 18:03:18 -07:00
trace_mmiotrace.c
trace_nop.c
trace_output.c
trace_output.h
trace_printk.c
trace_sched_switch.c
trace_sched_wakeup.c tracing: Fix compile issue for trace_sched_wakeup.c 2010-10-19 10:56:19 -04:00
trace_selftest.c sched: Constify function scope static struct sched_param usage 2011-01-07 15:55:45 +01:00
trace_selftest_dynamic.c
trace_stack.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
trace_stat.c
trace_stat.h
trace_syscalls.c tracing: Replace syscall_meta_data struct array with pointer array 2011-02-03 09:29:06 -05:00
trace_workqueue.c jump label: Initialize workqueue tracepoints *before* they are registered 2010-09-22 16:30:03 -04:00