Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0bfc2455 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

blktrace: port to tracepoints, update



Port to the new tracepoints API: split DEFINE_TRACE() and DECLARE_TRACE()
sites. Spread them out to the usage sites, as suggested by
Mathieu Desnoyers.

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Acked-by: default avatarMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
parent 5f3ea37c
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -32,6 +32,19 @@

#include "blk.h"

DEFINE_TRACE(block_plug);
DEFINE_TRACE(block_unplug_io);
DEFINE_TRACE(block_unplug_timer);
DEFINE_TRACE(block_getrq);
DEFINE_TRACE(block_sleeprq);
DEFINE_TRACE(block_rq_requeue);
DEFINE_TRACE(block_bio_backmerge);
DEFINE_TRACE(block_bio_frontmerge);
DEFINE_TRACE(block_bio_queue);
DEFINE_TRACE(block_rq_complete);
DEFINE_TRACE(block_remap);	/* Also used in drivers/md/dm.c */
EXPORT_TRACEPOINT_SYMBOL_GPL(block_remap);

static int __make_request(struct request_queue *q, struct bio *bio);

/*
+5 −0
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@
static DEFINE_SPINLOCK(elv_list_lock);
static LIST_HEAD(elv_list);

DEFINE_TRACE(block_rq_abort);

/*
 * Merge hash stuff.
 */
@@ -53,6 +55,9 @@ static const int elv_hash_shift = 6;
#define rq_hash_key(rq)		((rq)->sector + (rq)->nr_sectors)
#define ELV_ON_HASH(rq)		(!hlist_unhashed(&(rq)->hash))

DEFINE_TRACE(block_rq_insert);
DEFINE_TRACE(block_rq_issue);

/*
 * Query io scheduler to see if the current process issuing bio may be
 * merged with rq.
+2 −0
Original line number Diff line number Diff line
@@ -52,6 +52,8 @@ struct dm_target_io {
	union map_info info;
};

DEFINE_TRACE(block_bio_complete);

union map_info *dm_get_mapinfo(struct bio *bio)
{
	if (bio && bio->bi_private)
+2 −0
Original line number Diff line number Diff line
@@ -29,6 +29,8 @@
#include <trace/block.h>
#include <scsi/sg.h>		/* for struct sg_iovec */

DEFINE_TRACE(block_split);

static struct kmem_cache *bio_slab __read_mostly;

static mempool_t *bio_split_pool __read_mostly;
+50 −34
Original line number Diff line number Diff line
@@ -4,55 +4,71 @@
#include <linux/blkdev.h>
#include <linux/tracepoint.h>

DEFINE_TRACE(block_rq_abort,
DECLARE_TRACE(block_rq_abort,
	TPPROTO(struct request_queue *q, struct request *rq),
		TPARGS(q, rq));
DEFINE_TRACE(block_rq_insert,

DECLARE_TRACE(block_rq_insert,
	TPPROTO(struct request_queue *q, struct request *rq),
		TPARGS(q, rq));
DEFINE_TRACE(block_rq_issue,

DECLARE_TRACE(block_rq_issue,
	TPPROTO(struct request_queue *q, struct request *rq),
		TPARGS(q, rq));
DEFINE_TRACE(block_rq_requeue,

DECLARE_TRACE(block_rq_requeue,
	TPPROTO(struct request_queue *q, struct request *rq),
		TPARGS(q, rq));
DEFINE_TRACE(block_rq_complete,

DECLARE_TRACE(block_rq_complete,
	TPPROTO(struct request_queue *q, struct request *rq),
		TPARGS(q, rq));
DEFINE_TRACE(block_bio_bounce,

DECLARE_TRACE(block_bio_bounce,
	TPPROTO(struct request_queue *q, struct bio *bio),
		TPARGS(q, bio));
DEFINE_TRACE(block_bio_complete,

DECLARE_TRACE(block_bio_complete,
	TPPROTO(struct request_queue *q, struct bio *bio),
		TPARGS(q, bio));
DEFINE_TRACE(block_bio_backmerge,

DECLARE_TRACE(block_bio_backmerge,
	TPPROTO(struct request_queue *q, struct bio *bio),
		TPARGS(q, bio));
DEFINE_TRACE(block_bio_frontmerge,

DECLARE_TRACE(block_bio_frontmerge,
	TPPROTO(struct request_queue *q, struct bio *bio),
		TPARGS(q, bio));
DEFINE_TRACE(block_bio_queue,

DECLARE_TRACE(block_bio_queue,
	TPPROTO(struct request_queue *q, struct bio *bio),
		TPARGS(q, bio));
DEFINE_TRACE(block_getrq,

DECLARE_TRACE(block_getrq,
	TPPROTO(struct request_queue *q, struct bio *bio, int rw),
		TPARGS(q, bio, rw));
DEFINE_TRACE(block_sleeprq,

DECLARE_TRACE(block_sleeprq,
	TPPROTO(struct request_queue *q, struct bio *bio, int rw),
		TPARGS(q, bio, rw));
DEFINE_TRACE(block_plug,

DECLARE_TRACE(block_plug,
	TPPROTO(struct request_queue *q),
		TPARGS(q));
DEFINE_TRACE(block_unplug_timer,

DECLARE_TRACE(block_unplug_timer,
	TPPROTO(struct request_queue *q),
		TPARGS(q));
DEFINE_TRACE(block_unplug_io,

DECLARE_TRACE(block_unplug_io,
	TPPROTO(struct request_queue *q),
		TPARGS(q));
DEFINE_TRACE(block_split,

DECLARE_TRACE(block_split,
	TPPROTO(struct request_queue *q, struct bio *bio, unsigned int pdu),
		TPARGS(q, bio, pdu));
DEFINE_TRACE(block_remap,

DECLARE_TRACE(block_remap,
	TPPROTO(struct request_queue *q, struct bio *bio, dev_t dev,
		sector_t from, sector_t to),
		TPARGS(q, bio, dev, from, to));
Loading