[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <41102853-a663-d3a1-8822-3bbfbc5c1aa8@linux.vnet.ibm.com>
Date: Thu, 16 Nov 2017 09:57:45 +0530
From: Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com>
To: Jiri Olsa <jolsa@...hat.com>
Cc: Jiri Olsa <jolsa@...nel.org>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
lkml <linux-kernel@...r.kernel.org>,
Ingo Molnar <mingo@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
David Ahern <dsahern@...il.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Andi Kleen <andi@...stfloor.org>,
ravi.bangoria@...ux.vnet.ibm.com
Subject: Re: [PATCH 16/35] perf annotate: Add samples into struct
annotation_line
Hi Jiri,
On 11/15/2017 07:34 PM, Jiri Olsa wrote:
> On Tue, Nov 14, 2017 at 11:29:54AM +0100, Jiri Olsa wrote:
>> On Tue, Nov 14, 2017 at 03:45:27PM +0530, Ravi Bangoria wrote:
>>> Hi Jiri,
>>>
>>> On 11/14/2017 03:01 PM, Jiri Olsa wrote:
>>>> On Mon, Nov 13, 2017 at 09:14:38PM +0100, Jiri Olsa wrote:
>>>>> On Mon, Nov 13, 2017 at 09:16:20PM +0530, Ravi Bangoria wrote:
>>>>>> Hi Jiri,
>>>>>>
>>>>>> This patch seems to be causing segfault with "perf top --stdio".
>>>>>>
>>>>>> Steps to reproduce:
>>>>>> 1. start "perf top --stdio" in one terminal
>>>>>> 2. run some simple workload in another terminal, let it get finished.
>>>>>> 3. annotate function from previous workload in perf top (press 'a' followed
>>>>>> by 's')
>>>>>>
>>>>>> Perf will crash with:
>>>>>>
>>>>>> perf: Segmentation fault
>>>>>> Obtained 8 stack frames.
>>>>>> ./perf(sighandler_dump_stack+0x3e) [0x4f1b6e]
>>>>>> /lib64/libc.so.6(+0x36a7f) [0x7ff3aa7e4a7f]
>>>>>> ./perf() [0x4a27fd]
>>>>>> ./perf(symbol__annotate+0x199) [0x4a4439]
>>>>>> ./perf() [0x44e32d]
>>>>>> ./perf() [0x44f098]
>>>>>> /lib64/libpthread.so.0(+0x736c) [0x7ff3acee836c]
>>>>>> /lib64/libc.so.6(clone+0x3e) [0x7ff3aa8bee1e]
>>>>>>
>>>>>> Can you please check.
>>>>> hum, I'm getting following crash after resizing the terminal window:
>>>>>
>>>>> perf: Floating point exception
>>>>> Obtained 8 stack frames.
>>>>> ./perf(dump_stack+0x2e) [0x510c89]
>>>>> ./perf(sighandler_dump_stack+0x2e) [0x510d69]
>>>>> /lib64/libc.so.6(+0x36a80) [0x7f9419588a80]
>>>>> ./perf(perf_top__header_snprintf+0x208) [0x4f42c1]
>>>>> ./perf() [0x453c09]
>>>>> ./perf() [0x454ddb]
>>>>> /lib64/libpthread.so.0(+0x736d) [0x7f941bc8c36d]
>>>>> /lib64/libc.so.6(clone+0x3f) [0x7f9419662e1f]
>>>>> Floating point exception (core dumped)
>>>>>
>>>>> working on fix
>>>> so my crash is caused by bogus resize code, I have it working with fix for
>>>> memory corruption happening in SIGWINCH signal handler (attached)
>>>> could you please check if that fixes the code for you?
>>> Yes, this fixes the crash caused by resize.
>>>
>>> But original crash I reported is still there. Issue seems to be with evsel
>>> being NULL and we are trying to de-reference it somewhere inside
>>> annotation_line__new().
>>>
>>> Will try to spend more time on it.
>> right, I can see it now.. we are passing NULL as evsel in
>> the top but does not check on that.. attached patch prevents
>> the crash for me, but I'll need to double check if that's
>> correct fix
> I ended up with few other annotation fixes, could you please
> check following branch if it's working for you?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> perf/fixes
Changes looks good to me.
Thanks,
Ravi
Powered by blists - more mailing lists