[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <69859e3b-cb22-a536-79ca-ffc44c3f86a8@linux.vnet.ibm.com>
Date: Wed, 29 Nov 2017 18:54:02 +0530
From: Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com>
To: Thomas Richter <tmricht@...ux.vnet.ibm.com>
Cc: linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org,
acme@...nel.org, brueckner@...ux.vnet.ibm.com,
schwidefsky@...ibm.com, heiko.carstens@...ibm.com,
Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com>
Subject: Re: [PATCH] perf annotate: Fix objdump comment parsing for Intel mov
dissassembly
On 11/28/2017 01:26 PM, Thomas Richter wrote:
> The command 'perf annotate' parses the output of objdump and also
> investigates the comments produced by objdump. For example the
> output of objdump produces (on x86):
>
> 23eee: 4c 8b 3d 13 01 21 00 mov 0x210113(%rip),%r15
> # 234008 <stderr@@GLIBC_2.2.5+0x9a8>
>
> and the function mov__parse() is called to investigate the complete
> line. Mov__parse() breaks this line into several parts and finally
> calls function comment__symbol() to parse the data after the comment
> character '#'. Comment__symbol() expects a hexadecimal address followed
> by a symbol in '<' and '>' brackets.
>
> However the 2nd parameter given to function comment__symbol()
> always points to the comment character '#'. The address parsing
> always returns 0 because the character '#' is not a digit and
> strtoull() fails without being noticed.
>
> Fix this by advancing the second parameter to function comment__symbol()
> by one byte before invocation and add an error check after strtoull()
> has been called.
Yeah, looks like it fails to get correct value in 'addrp'.
Can you please show the difference in perf annotate output before
and after patch.
Thanks,
Ravi
Powered by blists - more mailing lists