All of lore.kernel.org
 help / color / mirror / Atom feed
From: Corey Ashford <cjashfor@linux.vnet.ibm.com>
To: Stephane Eranian <eranian@google.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	"Frédéric Weisbecker" <fweisbec@gmail.com>,
	"Arnaldo Carvalho de Melo" <acme@redhat.com>,
	"Peter Zijlstra" <peterz@infradead.org>,
	mingo@elte.hu, "Robert Richter" <robert.richter@amd.com>
Subject: Re: [BUG] perf sched broken
Date: Wed, 12 Jan 2011 17:53:55 -0800	[thread overview]
Message-ID: <4D2E5B33.2080305@linux.vnet.ibm.com> (raw)
In-Reply-To: <AANLkTim=jawJyBj0iFd0r4-LCKzvjFW+NddzJMD5GUB9@mail.gmail.com>

On 01/12/2011 01:29 AM, Stephane Eranian wrote:
> Hi,
>
> I am trying to use perf sched from tip-x86 but it fails for all my attempts.
>
> First of, I think the event list is stale. This is not so much the
> events themselves
> but rather the flags.
>
> Looks to me like the :r modifier is not supported anymore, so a patch like the
> one below is needed. That helps collect a trace. But then, you can dump
> the trace.

After looking at this in more detail, I agree with Stephane: the 'r' 
option appears to only be supported for hardware breakpoint events.  My 
patch just causes the 'r' to be properly processed and rejected as a 
legal option.

As I stated elsewhere in this thread, I don't have a problem running the 
perf commands below on a Fedora 14, 2.6.35 kernel, using the perf from 
2.6-tip master or x86/urgent.

I don't have a 2.6.37-tip kernel installed at the moment, but if you 
still think this could be a perf tool bug that occurs only when using it 
with a 2.6.37-tip kernel, let me know and I will devote some time to 
trying it out.

- Corey

>
> $ perf sched rec dd if=/dev/zero of=/dev/null count=1000000
> 1000000+0 records in
> 1000000+0 records out
> 512000000 bytes (512 MB) copied, 0.589981 s, 868 MB/s
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.481 MB perf.data (~20997 samples) ]
>
> $ perf sched rep
> run measurement overhead: 2934 nsecs
> sleep measurement overhead: 90502 nsecs
> the run test took 999149 nsecs
> the sleep test took 1092248 nsecs
>    Fatal: no trace data in the file
>
> $ perf sched trace -D
>   usage: perf sched [<options>] {record|latency|map|replay|trace}
>
>      -i, --input<file>     input file name
>      -v, --verbose         be more verbose (show symbol address, etc)
>      -D, --dump-raw-trace  dump raw trace in ASCII
>
> Note that this is not specific to pref sched. If I use perf record directly,
> I run into the same issue:
> $ perf record -R -a -c 1 -e sched:sched_switch -- sleep 1
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 0.365 MB perf.data (~15962 samples) ]
> $./perf report -D
>    Fatal: no trace data in the file
>
> Now that perf trace is gone, how to I dump the trace?
>
>
> Drop :r modifier for tracepoints
>
> Signed-off-by: Stephane Eranian<eranian@google.com>
> ---
>
> diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c
> index abd4b84..29e7ffd 100644
> --- a/tools/perf/builtin-sched.c
> +++ b/tools/perf/builtin-sched.c
> @@ -1843,15 +1843,15 @@ static const char *record_args[] = {
>          "-f",
>          "-m", "1024",
>          "-c", "1",
> -       "-e", "sched:sched_switch:r",
> -       "-e", "sched:sched_stat_wait:r",
> -       "-e", "sched:sched_stat_sleep:r",
> -       "-e", "sched:sched_stat_iowait:r",
> -       "-e", "sched:sched_stat_runtime:r",
> -       "-e", "sched:sched_process_exit:r",
> -       "-e", "sched:sched_process_fork:r",
> -       "-e", "sched:sched_wakeup:r",
> -       "-e", "sched:sched_migrate_task:r",
> +       "-e", "sched:sched_switch",
> +       "-e", "sched:sched_stat_wait",
> +       "-e", "sched:sched_stat_sleep",
> +       "-e", "sched:sched_stat_iowait",
> +       "-e", "sched:sched_stat_runtime",
> +       "-e", "sched:sched_process_exit",
> +       "-e", "sched:sched_process_fork",
> +       "-e", "sched:sched_wakeup",
> +       "-e", "sched:sched_migrate_task",
>   };
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/


  parent reply	other threads:[~2011-01-13  1:54 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-12  9:29 [BUG] perf sched broken Stephane Eranian
2011-01-12 12:11 ` Arnaldo Carvalho de Melo
2011-01-12 19:10   ` Corey Ashford
2011-01-12 19:41 ` Corey Ashford
2011-01-12 19:52   ` Stephane Eranian
2011-01-12 20:22     ` Corey Ashford
2011-01-12 22:35 ` Corey Ashford
2011-01-12 22:38   ` Stephane Eranian
2011-01-13  1:53 ` Corey Ashford [this message]
2011-01-13 13:20   ` Arnaldo Carvalho de Melo
2011-01-14  7:25 ` [tip:perf/urgent] perf sched: Fix list of events, dropping unsupported ':r' modifier tip-bot for Stephane Eranian
2011-08-03 10:59   ` Peter Zijlstra
2011-08-03 11:37     ` Frederic Weisbecker
2011-08-03 11:42       ` Peter Zijlstra
2011-08-03 11:57         ` Frederic Weisbecker
2011-08-03 12:05           ` Peter Zijlstra
2011-08-03 12:11             ` Frederic Weisbecker
2011-08-03 12:18               ` Peter Zijlstra
2011-08-03 17:06                 ` Arnaldo Carvalho de Melo
2011-08-03 19:49                   ` Peter Zijlstra

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=4D2E5B33.2080305@linux.vnet.ibm.com \
    --to=cjashfor@linux.vnet.ibm.com \
    --cc=acme@redhat.com \
    --cc=eranian@google.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=peterz@infradead.org \
    --cc=robert.richter@amd.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.