[PATCH] remove kernel syscalls
[linux-2.6.git] / block / blktrace.c
index 562ca7c..d3679dd 100644 (file)
@@ -31,26 +31,24 @@ 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 void 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);
-       return blktrace_seq;
+       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);
+       }
 }
 
 /*
@@ -59,9 +57,8 @@ static inline unsigned int trace_note(struct blk_trace *bt,
  */
 static void trace_note_tsk(struct blk_trace *bt, struct task_struct *tsk)
 {
-       tsk->btrace_seq = trace_note(bt, tsk->pid,
-                       BLK_TN_PROCESS,
-                       tsk->comm, sizeof(tsk->comm));
+       tsk->btrace_seq = blktrace_seq;
+       trace_note(bt, tsk->pid, BLK_TN_PROCESS, tsk->comm, sizeof(tsk->comm));
 }
 
 static void trace_note_time(struct blk_trace *bt)
@@ -397,8 +394,7 @@ err:
        if (bt) {
                if (bt->dropped_file)
                        debugfs_remove(bt->dropped_file);
-               if (bt->sequence)
-                       free_percpu(bt->sequence);
+               free_percpu(bt->sequence);
                if (bt->rchan)
                        relay_close(bt->rchan);
                kfree(bt);