From: Bernhard Schiffner <bernhard@schiffner-limbach.de>
To: Larry Finger <Larry.Finger@lwfinger.net>, linux-kernel@vger.kernel.org
Subject: [mmiotrace] Make timestamps as printk() does.
Date: Sun, 7 Feb 2010 22:05:26 +0100 [thread overview]
Message-ID: <201002072205.26665.bernhard@schiffner-limbach.de> (raw)
Hallo,
this little patch makes a simple "sort -m" on output gotten from dmesg and
mmiotrace possible.
It's a real help at least for me.
Bernhard
(CC me please, I'am not on this list.)
------------
Make mmiotrace timestamps compareable to printk().
diff --git a/kernel/trace/trace_mmiotrace.c b/kernel/trace/trace_mmiotrace.c
index 0acd834..32c21f7 100644
--- a/kernel/trace/trace_mmiotrace.c
+++ b/kernel/trace/trace_mmiotrace.c
@@ -146,7 +146,7 @@ static ssize_t mmio_read(struct trace_iterator *iter,
struct file *filp,
n = count_overruns(iter);
if (n) {
/* XXX: This is later than where events were lost. */
- trace_seq_printf(s, "MARK 0.000000 Lost %lu events.\n", n);
+ trace_seq_printf(s, "[ 0.000000] MARK Lost %lu events.\n",
n);
if (!overrun_detected)
pr_warning("mmiotrace has lost events.\n");
overrun_detected = true;
@@ -186,21 +186,21 @@ static enum print_line_t mmio_print_rw(struct
trace_iterator *iter)
switch (rw->opcode) {
case MMIO_READ:
ret = trace_seq_printf(s,
- "R %d %u.%06lu %d 0x%llx 0x%lx 0x%lx %d\n",
- rw->width, secs, usec_rem, rw->map_id,
+ "[%5lu.%06lu] R %d %d 0x%llx 0x%lx 0x%lx %d\n",
+ secs, usec_rem, rw->width, rw->map_id,
(unsigned long long)rw->phys,
rw->value, rw->pc, 0);
break;
case MMIO_WRITE:
ret = trace_seq_printf(s,
- "W %d %u.%06lu %d 0x%llx 0x%lx 0x%lx %d\n",
- rw->width, secs, usec_rem, rw->map_id,
+ "[%5lu.%06lu] W %d %d 0x%llx 0x%lx 0x%lx %d\n",
+ secs, usec_rem, rw->width, rw->map_id,
(unsigned long long)rw->phys,
rw->value, rw->pc, 0);
break;
case MMIO_UNKNOWN_OP:
ret = trace_seq_printf(s,
- "UNKNOWN %u.%06lu %d 0x%llx %02lx,%02lx,"
+ "[%5lu.%06lu] UNKNOWN %d 0x%llx %02lx,%02lx,"
"%02lx 0x%lx %d\n",
secs, usec_rem, rw->map_id,
(unsigned long long)rw->phys,
@@ -233,14 +233,14 @@ static enum print_line_t mmio_print_map(struct
trace_iterator *iter)
switch (m->opcode) {
case MMIO_PROBE:
ret = trace_seq_printf(s,
- "MAP %u.%06lu %d 0x%llx 0x%lx 0x%lx 0x%lx %d\n",
+ "[%5lu.%06lu] MAP %d 0x%llx 0x%lx 0x%lx 0x%lx %d\n",
secs, usec_rem, m->map_id,
(unsigned long long)m->phys, m->virt, m->len,
0UL, 0);
break;
case MMIO_UNPROBE:
ret = trace_seq_printf(s,
- "UNMAP %u.%06lu %d 0x%lx %d\n",
+ "[%5lu.%06lu] UNMAP %d 0x%lx %d\n",
secs, usec_rem, m->map_id, 0UL, 0);
break;
default:
@@ -264,7 +264,7 @@ static enum print_line_t mmio_print_mark(struct
trace_iterator *iter)
int ret;
/* The trailing newline must be in the message. */
- ret = trace_seq_printf(s, "MARK %u.%06lu %s", secs, usec_rem, msg);
+ ret = trace_seq_printf(s, "[%5lu.%06lu] MARK %s", secs, usec_rem,
msg);
if (!ret)
return TRACE_TYPE_PARTIAL_LINE;
next reply other threads:[~2010-02-07 21:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-07 21:05 Bernhard Schiffner [this message]
2010-02-12 22:33 ` [mmiotrace] Make timestamps as printk() does Larry Finger
2010-02-12 23:11 ` Tim Bird
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=201002072205.26665.bernhard@schiffner-limbach.de \
--to=bernhard@schiffner-limbach.de \
--cc=Larry.Finger@lwfinger.net \
--cc=linux-kernel@vger.kernel.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