Commit d3d9d2a5 authored by Jens Axboe's avatar Jens Axboe

[PATCH] blktrace: uninline trace_note()

It's too large to inline. Additionally clean it up, by fast pathing
the likely path.
Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
parent d916faac
......@@ -31,25 +31,25 @@ static unsigned int blktrace_seq __read_mostly = 1;
/*
* Send out a notify message.
*/
static inline unsigned int trace_note(struct blk_trace *bt,
pid_t pid, int action,
const void *data, size_t len)
static unsigned int trace_note(struct blk_trace *bt, pid_t pid, int action,
const void *data, size_t len)
{
struct blk_io_trace *t;
int cpu = smp_processor_id();
t = relay_reserve(bt->rchan, sizeof(*t) + len);
if (t == NULL)
return 0;
t->magic = BLK_IO_TRACE_MAGIC | BLK_IO_TRACE_VERSION;
t->time = sched_clock() - per_cpu(blk_trace_cpu_offset, cpu);
t->device = bt->dev;
t->action = action;
t->pid = pid;
t->cpu = cpu;
t->pdu_len = len;
memcpy((void *) t + sizeof(*t), data, len);
if (t) {
const int cpu = smp_processor_id();
t->magic = BLK_IO_TRACE_MAGIC | BLK_IO_TRACE_VERSION;
t->time = sched_clock() - per_cpu(blk_trace_cpu_offset, cpu);
t->device = bt->dev;
t->action = action;
t->pid = pid;
t->cpu = cpu;
t->pdu_len = len;
memcpy((void *) t + sizeof(*t), data, len);
}
return blktrace_seq;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment