mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Li Zefan <lizf@cn.fujitsu.com>
Cc: Jens Axboe <jens.axboe@oracle.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 5/5] blktrace: print human-readable act_mask
Date: Tue, 24 Mar 2009 09:39:05 +0100	[thread overview]
Message-ID: <20090324083905.GB13016@elte.hu> (raw)
In-Reply-To: <49C89488.4030604@cn.fujitsu.com>


* Li Zefan <lizf@cn.fujitsu.com> wrote:

> Print stringified act_mask instead of hex value:
>  # cat act_mask
>  read,write,barrier,sync,queue,requeue,issue,complete,fs,pc,ahead,meta,
>  discard,drv_data
>  # echo "meta,write" > act_mask
>  # cat act_mask
>  write,meta

Nice!

It would also be nice to activate trace filters for the blktrace 
tracepoints - i.e. to convert them to the TRACE_EVENT() enumeration 
format. Beyond user-space parseable field enumeration and filter, 
that will also speed up tracing and allows binary record streaming 
with splice() zero-copy.

Via that "act_mask" can become a filterable field and you can define 
expressions to filter. All other fields like sector become in-kernel 
filterable too.

See a few examples here:

 include/trace/irq_event_types.h
 include/trace/sched_event_types.h

Note, blktrace tracepoints are certainly more complex than the 
tracepoints above - you can embedd C statements in TRACE_EVENT()'s 
TP_fast_assign() bit.

It was specifically designed to allow the support of blktrace 
tracepoints, so you can embedd the blk_pc_request() and disk_devt() 
translation for the block_rq_complete event or 
block_rq_requeue/issue tracepoints.

> +static struct {
> +	int mask;
> +	const char *str;
> +} mask_maps[] = {
> +	{ BLK_TC_READ,		"read"		},
> +	{ BLK_TC_WRITE,		"write"		},
> +	{ BLK_TC_BARRIER,	"barrier"	},
> +	{ BLK_TC_SYNC,		"sync"		},
> +	{ BLK_TC_QUEUE,		"queue"		},
> +	{ BLK_TC_REQUEUE,	"requeue"	},
> +	{ BLK_TC_ISSUE,		"issue"		},
> +	{ BLK_TC_COMPLETE,	"complete"	},
> +	{ BLK_TC_FS,		"fs"		},
> +	{ BLK_TC_PC,		"pc"		},
> +	{ BLK_TC_AHEAD,		"ahead"		},
> +	{ BLK_TC_META,		"meta"		},
> +	{ BLK_TC_DISCARD,	"discard"	},
> +	{ BLK_TC_DRV_DATA,	"drv_data"	},
> +};

(minor nit: this should be a const.)

Jens, Arnaldo, Steve, the series from Li looks good to me - Ack?

	Ingo

  reply	other threads:[~2009-03-24  8:39 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-24  8:04 [PATCH 0/5] blktrace: various cleanups and fixes, part 2 Li Zefan
2009-03-24  8:04 ` [PATCH 1/5] blktrace: mark ddir_act and what2act const Li Zefan
2009-03-24 12:12   ` [tip:tracing/blktrace] blktrace: mark ddir_act[] const Li Zefan
2009-03-24 12:49   ` [PATCH 1/5] blktrace: mark ddir_act and what2act const Arnaldo Carvalho de Melo
2009-03-24  8:05 ` [PATCH 2/5] blktrace: fix wrong calculation of RWBS Li Zefan
2009-03-24 12:12   ` [tip:tracing/blktrace] " Li Zefan
2009-03-24  8:05 ` [PATCH 3/5] blktrace: fix off-by-one bug Li Zefan
2009-03-24  8:27   ` Ingo Molnar
2009-03-24  8:33     ` Li Zefan
2009-03-24  8:41       ` Li Zefan
2009-03-24  8:47         ` Ingo Molnar
2009-03-24  8:50           ` Li Zefan
2009-03-25  1:21   ` Li Zefan
2009-03-25 13:15   ` [tip:tracing/blktrace] " Li Zefan
2009-03-24  8:05 ` [PATCH 4/5] blktrace: fix t_error() Li Zefan
2009-03-24  8:44   ` Ingo Molnar
2009-03-24 12:12   ` [tip:tracing/blktrace] " Li Zefan
2009-03-24 12:51   ` [PATCH 4/5] " Arnaldo Carvalho de Melo
2009-03-24  8:06 ` [PATCH 5/5] blktrace: print human-readable act_mask Li Zefan
2009-03-24  8:39   ` Ingo Molnar [this message]
2009-03-24  9:01     ` Li Zefan
2009-03-24  8:39   ` Ingo Molnar
2009-03-24  8:46     ` Li Zefan
2009-03-24  9:43   ` Li Zefan
2009-03-24  9:48     ` Ingo Molnar
2009-03-24 12:12     ` [tip:tracing/blktrace] " Li Zefan
2009-03-24 15:48   ` [PATCH 5/5] " Steven Rostedt
2009-03-24 15:49   ` Steven Rostedt
2009-03-24 15:56     ` Ingo Molnar
2009-03-24 16:04       ` Steven Rostedt
2009-03-24 16:06         ` Steven Rostedt
2009-03-25  2:55           ` Li Zefan
2009-03-24 11:49 ` [PATCH 0/5] blktrace: various cleanups and fixes, part 2 Jens Axboe
2009-03-24 12:10   ` Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090324083905.GB13016@elte.hu \
    --to=mingo@elte.hu \
    --cc=acme@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=jens.axboe@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizf@cn.fujitsu.com \
    --cc=rostedt@goodmis.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®