LKML Archive mirror
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Ian Rogers <irogers@google.com>,
	Kan Liang <kan.liang@linux.intel.com>,
	 Jiri Olsa <jolsa@kernel.org>,
	Adrian Hunter <adrian.hunter@intel.com>,
	 Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@kernel.org>,
	 LKML <linux-kernel@vger.kernel.org>,
	linux-perf-users@vger.kernel.org
Subject: Re: [PATCH] perf test: Add a new test for perf annotate
Date: Wed, 24 Apr 2024 15:48:37 -0700	[thread overview]
Message-ID: <CAM9d7cg0bKF7+BtmkFxnHtiUZcgCWNG7eMqDccrZnM92G78vdQ@mail.gmail.com> (raw)
In-Reply-To: <ZilzYDlzj7c1mQq4@x1>

On Wed, Apr 24, 2024 at 2:02 PM Arnaldo Carvalho de Melo
<acme@kernel.org> wrote:
>
> On Wed, Apr 24, 2024 at 11:09:48AM -0700, Ian Rogers wrote:
> > On Tue, Apr 23, 2024 at 5:12 PM Namhyung Kim <namhyung@kernel.org> wrote:
> > >
> > > Add a basic perf annotate test
> > >
> > >   $ ./perf test annotate -vv
> > >    76: perf annotate basic tests:
> > >   --- start ---
> > >   test child forked, pid 846989
> > >    fbcd0-fbd55 l noploop
> > >   perf does have symbol 'noploop'
> > >   Basic perf annotate test
> > >            : 0     0xfbcd0 <noploop>:
> > >       0.00 :   fbcd0:       pushq   %rbp
> > >       0.00 :   fbcd1:       movq    %rsp, %rbp
> > >       0.00 :   fbcd4:       pushq   %r12
> > >       0.00 :   fbcd6:       pushq   %rbx
> > >       0.00 :   fbcd7:       movl    $1, %ebx
> > >       0.00 :   fbcdc:       subq    $0x10, %rsp
> > >       0.00 :   fbce0:       movq    %fs:0x28, %rax
> > >       0.00 :   fbce9:       movq    %rax, -0x18(%rbp)
> > >       0.00 :   fbced:       xorl    %eax, %eax
> > >       0.00 :   fbcef:       testl   %edi, %edi
> > >       0.00 :   fbcf1:       jle     0xfbd04
> > >       0.00 :   fbcf3:       movq    (%rsi), %rdi
> > >       0.00 :   fbcf6:       movl    $0xa, %edx
> > >       0.00 :   fbcfb:       xorl    %esi, %esi
> > >       0.00 :   fbcfd:       callq   0x41920
> > >       0.00 :   fbd02:       movl    %eax, %ebx
> > >       0.00 :   fbd04:       leaq    -0x7b(%rip), %r12   # fbc90 <sighandler>
> > >       0.00 :   fbd0b:       movl    $2, %edi
> > >       0.00 :   fbd10:       movq    %r12, %rsi
> > >       0.00 :   fbd13:       callq   0x40a00
> > >       0.00 :   fbd18:       movl    $0xe, %edi
> > >       0.00 :   fbd1d:       movq    %r12, %rsi
> > >       0.00 :   fbd20:       callq   0x40a00
> > >       0.00 :   fbd25:       movl    %ebx, %edi
> > >       0.00 :   fbd27:       callq   0x407c0
> > >       0.10 :   fbd2c:       movl    0x89785e(%rip), %eax        # 993590 <done>
> > >       0.00 :   fbd32:       testl   %eax, %eax
> > >      99.90 :   fbd34:       je      0xfbd2c
> > >       0.00 :   fbd36:       movq    -0x18(%rbp), %rax
> > >       0.00 :   fbd3a:       subq    %fs:0x28, %rax
> > >       0.00 :   fbd43:       jne     0xfbd50
> > >       0.00 :   fbd45:       addq    $0x10, %rsp
> > >       0.00 :   fbd49:       xorl    %eax, %eax
> > >       0.00 :   fbd4b:       popq    %rbx
> > >       0.00 :   fbd4c:       popq    %r12
> > >       0.00 :   fbd4e:       popq    %rbp
> > >       0.00 :   fbd4f:       retq
> > >       0.00 :   fbd50:       callq   0x407e0
> > >       0.00 :   fbcd0:       pushq   %rbp
> > >       0.00 :   fbcd1:       movq    %rsp, %rbp
> > >       0.00 :   fbcd4:       pushq   %r12
> > >       0.00 :   fbcd0:  push   %rbp
> > >       0.00 :   fbcd1:  mov    %rsp,%rbp
> > >       0.00 :   fbcd4:  push   %r12
> > >   Basic annotate test [Success]
> > >   ---- end(0) ----
> > >    76: perf annotate basic tests                                       : Ok
> > >
> > > Signed-off-by: Namhyung Kim <namhyung@kernel.org>
> >
> > Looks good, thanks for this!
> >
> > Reviewed-by: Ian Rogers <irogers@google.com>
>
> Thanks! Applied, with the following changes to improve the error
> reporting, please holler if you disagree:

LGTM!

Thanks,
Namhyung

>
> diff --git a/tools/perf/tests/shell/annotate.sh b/tools/perf/tests/shell/annotate.sh
> index 7820d13eebaef535..1db1e8113d9943a6 100755
> --- a/tools/perf/tests/shell/annotate.sh
> +++ b/tools/perf/tests/shell/annotate.sh
> @@ -36,7 +36,7 @@ test_basic() {
>    echo "Basic perf annotate test"
>    if ! perf record -o "${perfdata}" ${testprog} 2> /dev/null
>    then
> -    echo "Basic annotate [Failed record]"
> +    echo "Basic annotate [Failed: perf record]"
>      err=1
>      return
>    fi
> @@ -44,7 +44,7 @@ test_basic() {
>    # check if it has the target symbol
>    if ! perf annotate -i "${perfdata}" 2> /dev/null | grep "${testsym}"
>    then
> -    echo "Basic annotate [Failed missing symbol]"
> +    echo "Basic annotate [Failed: missing target symbol]"
>      err=1
>      return
>    fi
> @@ -52,7 +52,7 @@ test_basic() {
>    # check if it has the disassembly lines
>    if ! perf annotate -i "${perfdata}" 2> /dev/null | grep "${disasm_regex}"
>    then
> -    echo "Basic annotate [Failed missing disasm output]"
> +    echo "Basic annotate [Failed: missing disasm output from default disassembler]"
>      err=1
>      return
>    fi
> @@ -61,7 +61,7 @@ test_basic() {
>    if ! perf annotate -i "${perfdata}" "${testsym}" 2> /dev/null | \
>           grep -m 3 "${disasm_regex}"
>    then
> -    echo "Basic annotate [Failed missing disasm output]"
> +    echo "Basic annotate [Failed: missing disasm output when specifying the target symbol]"
>      err=1
>      return
>    fi
> @@ -70,7 +70,7 @@ test_basic() {
>    if ! perf annotate -i "${perfdata}" --objdump=objdump 2> /dev/null | \
>           grep -m 3 "${disasm_regex}"
>    then
> -    echo "Basic annotate [Failed missing disasm output from objdump]"
> +    echo "Basic annotate [Failed: missing disasm output from non default disassembler (using --objdump)]"
>      err=1
>      return
>    fi

      reply	other threads:[~2024-04-24 22:48 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-24  0:12 [PATCH] perf test: Add a new test for perf annotate Namhyung Kim
2024-04-24 18:09 ` Ian Rogers
2024-04-24 21:02   ` Arnaldo Carvalho de Melo
2024-04-24 22:48     ` Namhyung Kim [this message]

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=CAM9d7cg0bKF7+BtmkFxnHtiUZcgCWNG7eMqDccrZnM92G78vdQ@mail.gmail.com \
    --to=namhyung@kernel.org \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=irogers@google.com \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).