Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 140666
b: refs/heads/master
c: 157f9c0
h: refs/heads/master
v: v3
  • Loading branch information
Arnaldo Carvalho de Melo authored and Ingo Molnar committed Jan 26, 2009
1 parent 22e3349 commit 9a0e935
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 20 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c71a896154119f4ca9e89d6078f5f63ad60ef199
refs/heads/master: 157f9c00e88529ed84bd7d581a40d411e5414cf0
40 changes: 25 additions & 15 deletions trunk/block/blktrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ static int __read_mostly blk_tracer_enabled;

static struct tracer_opt blk_tracer_opts[] = {
/* Default disable the minimalistic output */
{ TRACER_OPT(blk_classic, TRACE_BLK_OPT_CLASSIC ) },
{ TRACER_OPT(blk_classic, TRACE_BLK_OPT_CLASSIC) },
{ }
};

Expand Down Expand Up @@ -169,7 +169,8 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes,
pid_t pid;
int cpu, pc = 0;

if (unlikely(bt->trace_state != Blktrace_running || !blk_tracer_enabled))
if (unlikely(bt->trace_state != Blktrace_running ||
!blk_tracer_enabled))
return;

what |= ddir_act[rw & WRITE];
Expand All @@ -192,7 +193,7 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes,
sizeof(*t) + pdu_len, &flags);
if (!event)
return;

ent = ring_buffer_event_data(event);
t = (struct blk_io_trace *)ent;
pc = preempt_count();
Expand Down Expand Up @@ -234,7 +235,7 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes,
if (blk_tr) {
ring_buffer_unlock_commit(blk_tr->buffer, event, flags);
if (pid != 0 &&
(blk_tracer_flags.val & TRACE_BLK_OPT_CLASSIC) == 0 &&
!(blk_tracer_flags.val & TRACE_BLK_OPT_CLASSIC) &&
(trace_flags & TRACE_ITER_STACKTRACE) != 0)
__trace_stack(blk_tr, NULL, flags, 5, pc);
trace_wake_up();
Expand Down Expand Up @@ -955,19 +956,27 @@ static void blk_unregister_tracepoints(void)

static void fill_rwbs(char *rwbs, const struct blk_io_trace *t)
{
int i = 0;
int i = 0;

if (t->action & BLK_TC_DISCARD) rwbs[i++] = 'D';
else if (t->action & BLK_TC_WRITE) rwbs[i++] = 'W';
else if (t->bytes) rwbs[i++] = 'R';
else rwbs[i++] = 'N';
if (t->action & BLK_TC_DISCARD)
rwbs[i++] = 'D';
else if (t->action & BLK_TC_WRITE)
rwbs[i++] = 'W';
else if (t->bytes)
rwbs[i++] = 'R';
else
rwbs[i++] = 'N';

if (t->action & BLK_TC_AHEAD) rwbs[i++] = 'A';
if (t->action & BLK_TC_BARRIER) rwbs[i++] = 'B';
if (t->action & BLK_TC_SYNC) rwbs[i++] = 'S';
if (t->action & BLK_TC_META) rwbs[i++] = 'M';
if (t->action & BLK_TC_AHEAD)
rwbs[i++] = 'A';
if (t->action & BLK_TC_BARRIER)
rwbs[i++] = 'B';
if (t->action & BLK_TC_SYNC)
rwbs[i++] = 'S';
if (t->action & BLK_TC_META)
rwbs[i++] = 'M';

rwbs[i] = '\0';
rwbs[i] = '\0';
}

static inline
Expand Down Expand Up @@ -1049,7 +1058,8 @@ static int blk_log_generic(struct trace_seq *s, const struct trace_entry *ent)
return trace_seq_printf(s, "[%s]\n", cmd);
}

static int blk_log_with_error(struct trace_seq *s, const struct trace_entry *ent)
static int blk_log_with_error(struct trace_seq *s,
const struct trace_entry *ent)
{
if (t_sec(ent))
return trace_seq_printf(s, "%llu + %u [%d]\n", t_sector(ent),
Expand Down
5 changes: 1 addition & 4 deletions trunk/fs/partitions/check.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include <linux/kmod.h>
#include <linux/ctype.h>
#include <linux/genhd.h>
#include <linux/blktrace_api.h>

#include "check.h"

Expand Down Expand Up @@ -268,10 +269,6 @@ ssize_t part_fail_store(struct device *dev,
}
#endif

#ifdef CONFIG_BLK_DEV_IO_TRACE
extern struct attribute_group blk_trace_attr_group;
#endif

static DEVICE_ATTR(partition, S_IRUGO, part_partition_show, NULL);
static DEVICE_ATTR(start, S_IRUGO, part_start_show, NULL);
static DEVICE_ATTR(size, S_IRUGO, part_size_show, NULL);
Expand Down
5 changes: 5 additions & 0 deletions trunk/include/linux/blktrace_api.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,9 @@ struct blk_user_trace_setup {

#ifdef __KERNEL__
#if defined(CONFIG_BLK_DEV_IO_TRACE)

#include <linux/sysfs.h>

struct blk_trace {
int trace_state;
struct rchan *rchan;
Expand Down Expand Up @@ -192,6 +195,8 @@ extern int blk_trace_setup(struct request_queue *q, char *name, dev_t dev,
extern int blk_trace_startstop(struct request_queue *q, int start);
extern int blk_trace_remove(struct request_queue *q);

extern struct attribute_group blk_trace_attr_group;

#else /* !CONFIG_BLK_DEV_IO_TRACE */
#define blk_trace_ioctl(bdev, cmd, arg) (-ENOTTY)
#define blk_trace_shutdown(q) do { } while (0)
Expand Down

0 comments on commit 9a0e935

Please sign in to comment.