From: Sasha Levin <sashal@kernel.org>
To: gregkh@linuxfoundation.org
Cc: srikar@linux.vnet.ibm.com, acme@redhat.com, jolsa@kernel.org,
namhyung@kernel.org, naveen.n.rao@linux.vnet.ibm.com,
ravi.bangoria@linux.ibm.com, stable@vger.kernel.org
Subject: Re: FAILED: patch "[PATCH] perf stat: Fix a segmentation fault when using repeat forever" failed to apply to 4.14-stable tree
Date: Tue, 8 Oct 2019 19:53:27 -0400 [thread overview]
Message-ID: <20191008235327.GN1396@sasha-vm> (raw)
In-Reply-To: <157055528553188@kroah.com>
On Tue, Oct 08, 2019 at 07:21:25PM +0200, gregkh@linuxfoundation.org wrote:
>
>The patch below does not apply to the 4.14-stable tree.
>If someone wants it applied there, or to any other stable or longterm
>tree, then please email the backport, including the original git commit
>id to <stable@vger.kernel.org>.
>
>thanks,
>
>greg k-h
>
>------------------ original commit in Linus's tree ------------------
>
>From 443f2d5ba13d65ccfd879460f77941875159d154 Mon Sep 17 00:00:00 2001
>From: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
>Date: Wed, 4 Sep 2019 15:17:38 +0530
>Subject: [PATCH] perf stat: Fix a segmentation fault when using repeat forever
>
>Observe a segmentation fault when 'perf stat' is asked to repeat forever
>with the interval option.
>
>Without fix:
>
> # perf stat -r 0 -I 5000 -e cycles -a sleep 10
> # time counts unit events
> 5.000211692 3,13,89,82,34,157 cycles
> 10.000380119 1,53,98,52,22,294 cycles
> 10.040467280 17,16,79,265 cycles
> Segmentation fault
>
>This problem was only observed when we use forever option aka -r 0 and
>works with limited repeats. Calling print_counter with ts being set to
>NULL, is not a correct option when interval is set. Hence avoid
>print_counter(NULL,..) if interval is set.
>
>With fix:
>
> # perf stat -r 0 -I 5000 -e cycles -a sleep 10
> # time counts unit events
> 5.019866622 3,15,14,43,08,697 cycles
> 10.039865756 3,15,16,31,95,261 cycles
> 10.059950628 1,26,05,47,158 cycles
> 5.009902655 3,14,52,62,33,932 cycles
> 10.019880228 3,14,52,22,89,154 cycles
> 10.030543876 66,90,18,333 cycles
> 5.009848281 3,14,51,98,25,437 cycles
> 10.029854402 3,15,14,93,04,918 cycles
> 5.009834177 3,14,51,95,92,316 cycles
>
>Committer notes:
>
>Did the 'git bisect' to find the cset introducing the problem to add the
>Fixes tag below, and at that time the problem reproduced as:
>
> (gdb) run stat -r0 -I500 sleep 1
> <SNIP>
> Program received signal SIGSEGV, Segmentation fault.
> print_interval (prefix=prefix@entry=0x7fffffffc8d0 "", ts=ts@entry=0x0) at builtin-stat.c:866
> 866 sprintf(prefix, "%6lu.%09lu%s", ts->tv_sec, ts->tv_nsec, csv_sep);
> (gdb) bt
> #0 print_interval (prefix=prefix@entry=0x7fffffffc8d0 "", ts=ts@entry=0x0) at builtin-stat.c:866
> #1 0x000000000041860a in print_counters (ts=ts@entry=0x0, argc=argc@entry=2, argv=argv@entry=0x7fffffffd640) at builtin-stat.c:938
> #2 0x0000000000419a7f in cmd_stat (argc=2, argv=0x7fffffffd640, prefix=<optimized out>) at builtin-stat.c:1411
> #3 0x000000000045c65a in run_builtin (p=p@entry=0x6291b8 <commands+216>, argc=argc@entry=5, argv=argv@entry=0x7fffffffd640) at perf.c:370
> #4 0x000000000045c893 in handle_internal_command (argc=5, argv=0x7fffffffd640) at perf.c:429
> #5 0x000000000045c8f1 in run_argv (argcp=argcp@entry=0x7fffffffd4ac, argv=argv@entry=0x7fffffffd4a0) at perf.c:473
> #6 0x000000000045cac9 in main (argc=<optimized out>, argv=<optimized out>) at perf.c:588
> (gdb)
>
>Mostly the same as just before this patch:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00000000005874a7 in print_interval (config=0xa1f2a0 <stat_config>, evlist=0xbc9b90, prefix=0x7fffffffd1c0 "`", ts=0x0) at util/stat-display.c:964
> 964 sprintf(prefix, "%6lu.%09lu%s", ts->tv_sec, ts->tv_nsec, config->csv_sep);
> (gdb) bt
> #0 0x00000000005874a7 in print_interval (config=0xa1f2a0 <stat_config>, evlist=0xbc9b90, prefix=0x7fffffffd1c0 "`", ts=0x0) at util/stat-display.c:964
> #1 0x0000000000588047 in perf_evlist__print_counters (evlist=0xbc9b90, config=0xa1f2a0 <stat_config>, _target=0xa1f0c0 <target>, ts=0x0, argc=2, argv=0x7fffffffd670)
> at util/stat-display.c:1172
> #2 0x000000000045390f in print_counters (ts=0x0, argc=2, argv=0x7fffffffd670) at builtin-stat.c:656
> #3 0x0000000000456bb5 in cmd_stat (argc=2, argv=0x7fffffffd670) at builtin-stat.c:1960
> #4 0x00000000004dd2e0 in run_builtin (p=0xa30e00 <commands+288>, argc=5, argv=0x7fffffffd670) at perf.c:310
> #5 0x00000000004dd54d in handle_internal_command (argc=5, argv=0x7fffffffd670) at perf.c:362
> #6 0x00000000004dd694 in run_argv (argcp=0x7fffffffd4cc, argv=0x7fffffffd4c0) at perf.c:406
> #7 0x00000000004dda11 in main (argc=5, argv=0x7fffffffd670) at perf.c:531
> (gdb)
>
>Fixes: d4f63a4741a8 ("perf stat: Introduce print_counters function")
>Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
>Acked-by: Jiri Olsa <jolsa@kernel.org>
>Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
>Tested-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
>Cc: Namhyung Kim <namhyung@kernel.org>
>Cc: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
>Cc: stable@vger.kernel.org # v4.2+
>Link: http://lore.kernel.org/lkml/20190904094738.9558-3-srikar@linux.vnet.ibm.com
>Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Fixed up and queued it for 4.14-4.4.
--
Thanks,
Sasha
prev parent reply other threads:[~2019-10-08 23:53 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-08 17:21 FAILED: patch "[PATCH] perf stat: Fix a segmentation fault when using repeat forever" failed to apply to 4.14-stable tree gregkh
2019-10-08 23:53 ` Sasha Levin [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=20191008235327.GN1396@sasha-vm \
--to=sashal@kernel.org \
--cc=acme@redhat.com \
--cc=gregkh@linuxfoundation.org \
--cc=jolsa@kernel.org \
--cc=namhyung@kernel.org \
--cc=naveen.n.rao@linux.vnet.ibm.com \
--cc=ravi.bangoria@linux.ibm.com \
--cc=srikar@linux.vnet.ibm.com \
--cc=stable@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