lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <491DA131.1060209@cosmosbay.com>
Date:	Fri, 14 Nov 2008 17:02:57 +0100
From:	Eric Dumazet <dada1@...mosbay.com>
To:	Andi Kleen <andi@...stfloor.org>
CC:	Robert Richter <robert.richter@....com>,
	oprofile-list@...ts.sf.net, Ingo Molnar <mingo@...e.hu>,
	Jiri Kosina <jkosina@...e.cz>, Jiri Benc <jbenc@...e.cz>,
	Vilem Marsik <vmarsik@...e.cz>,
	Pekka Enberg <penberg@...helsinki.fi>,
	linux-kernel@...r.kernel.org
Subject: Re: Oprofile : need to adjust PC by 16 bytes

Andi Kleen a écrit :
> On Fri, Nov 14, 2008 at 04:25:51PM +0100, Eric Dumazet wrote:
>> Very strange results on my Intel E5450 CPU
>>
>> I found that I have to bias regs->ip by 16 bytes in order to have
>> correct profiling.
> 
> Can you expand a bit how you determined if the profile is right or wrong?
> 
> -Andi
> 
> 

opannotate -a vmlinux > FILE

And check results.

With the patch I get :

c041d270 <dst_release>: /* dst_release total:  16523  1.2978 */
   252  0.0198 :c041d270:       push   %ebp
   654  0.0514 :c041d271:       test   %eax,%eax
               :c041d273:       mov    %esp,%ebp
    47  0.0037 :c041d275:       mov    %eax,%edx
    42  0.0033 :c041d277:       je     c041d289 <dst_release+0x19>
               :c041d279:       mov    $0xffffffff,%eax
     3 2.4e-04 :c041d27e:       lock xadd %eax,0x80(%edx)
 14766  1.1598 :c041d286:       dec    %eax
     1 7.9e-05 :c041d287:       js     c041d28b <dst_release+0x1b>
    53  0.0042 :c041d289:       pop    %ebp
   705  0.0554 :c041d28a:       ret
               :c041d28b:       mov    $0x10e,%edx
               :c041d290:       mov    $0xc0561ed5,%eax
               :c041d295:       call   c022d1a0 <warn_on_slowpath>
               :c041d29a:       pop    %ebp
               :c041d29b:       ret
               :c041d29c:       lea    0x0(%esi),%esi

This results please me : The cost is right after the "lock xadd" as expected.

Without patch, all addresses were off by 16 bytes.

On dst_release() it was on the call on warn_on_slowpath(),
and I am pretty sure it is not possible at all this WARN_ON is hit



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ