Now that relaying the blktrace protocol information via relayfs has been removed from __blk_add_trace(), it only uses 'struct blk_io_trace' for the ftrace portion of the function. Directly pass in the reserved area of the ftrace ring buffer to record_blktrace_event(). Signed-off-by: Johannes Thumshirn --- kernel/trace/blktrace.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c index 5b97dc5e2cfd..14fb4e7296cf 100644 --- a/kernel/trace/blktrace.c +++ b/kernel/trace/blktrace.c @@ -258,7 +258,6 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes, struct task_struct *tsk = current; struct ring_buffer_event *event = NULL; struct trace_buffer *buffer = NULL; - struct blk_io_trace *t; unsigned long flags = 0; unsigned long *sequence; unsigned int trace_ctx = 0; @@ -290,19 +289,19 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes, return; cpu = raw_smp_processor_id(); - trace_len = sizeof(*t) + pdu_len + cgid_len; if (blk_tracer) { tracing_record_cmdline(current); buffer = blk_tr->array_buffer.buffer; trace_ctx = tracing_gen_ctx_flags(0); + trace_len = sizeof(struct blk_io_trace) + pdu_len + cgid_len; event = trace_buffer_lock_reserve(buffer, TRACE_BLK, trace_len, trace_ctx); if (!event) return; - t = ring_buffer_event_data(event); - record_blktrace_event(t, pid, cpu, sector, bytes, + record_blktrace_event(ring_buffer_event_data(event), + pid, cpu, sector, bytes, lower_32_bits(what), bt->dev, error, cgid, cgid_len, pdu_data, pdu_len); -- 2.51.0