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 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.