On 18/08/15 09:39, Adrian Hunter wrote:
> On 17/08/15 22:58, Arnaldo Carvalho de Melo wrote:
>> Em Mon, Aug 17, 2015 at 10:09:26PM +0300, Adrian Hunter escreveu:
>>> On 17/08/2015 8:58 p.m., Arnaldo Carvalho de Melo wrote:
>>>> Em Mon, Aug 17, 2015 at 08:43:09PM +0300, Adrian Hunter escreveu:
>>>>> On 17/08/2015 6:52 p.m., Arnaldo Carvalho de Melo wrote:
>>>>>>      1.92%  usleep   [unknown]         [.] 0x00007fa0ff695086
>>>>>>      1.60%  usleep   [unknown]         [.] 0xffffffff811c91d0
>>>>>>      1.48%  usleep   [unknown]         [.] 0x00007fa0ffb3030d
>>>>>>      1.24%  usleep   [unknown]         [.] 0x00007fa0ff6950c7
>>>>
>>>>> It is very weird that it doesn't know the dso.
>>>>
>>>>> I presume there is nothing unusual about the environment e.g. in a chroot 
>>>>> or anything
>>>>
>>>>> What if you try a different event e.g. perf record --per-thread -e cycles 
>>>>> sleep 1
>>>>
>>>> [root@zoo ~]# perf record --per-thread -e cycles sleep 1
>>>> [ perf record: Woken up 1 times to write data ]
>>>> [ perf record: Captured and wrote 0.014 MB perf.data (9 samples) ]
>>>> [root@zoo ~]# perf report | grep -v ^# | head -5
>>>>     42.57%  sleep    libc-2.20.so      [.] malloc_hook_ini
>>>>     41.81%  sleep    [kernel.vmlinux]  [k] filemap_fault
>>>>     14.35%  sleep    [kernel.vmlinux]  [k] flush_tlb_mm_range
>>>>      1.18%  sleep    [kernel.vmlinux]  [k] strlcpy
>>>>      0.09%  sleep    [kernel.vmlinux]  [k] native_write_msr_safe
>>>> [root@zoo ~]#
>>>>
>>>> [root@zoo ~]# perf report --dsos libc-2.20.so | grep -v '^[#]'
>>>>     42.57%  sleep    [.] malloc_hook_ini
>>>>
>>>> [root@zoo ~]#
>>>>
>>>> [root@zoo ~]# perf record --per-thread -e intel_bts// usleep 1
>>>> [ perf record: Woken up 1 times to write data ]
>>>> [ perf record: Captured and wrote 1.825 MB perf.data ]
>>>> [root@zoo ~]# perf report | grep -v ^# | head -5
>>>> Warning:
>>>> 79074 instruction trace errors
>>>>      2.80%  usleep   [unknown]         [.] 0x00007f48888aa061
>>>> [root@zoo ~]#
>>>
>>> Running out of ideas.  Can you somehow share or send me the offending 
>>> perf.data file?
>>
>> http://vger.kernel.org/~acme/perf/perf.data.intel_bts-4.2.0-rc5+.xz
> 
> Says: You don't have permission to access
> /~acme/perf/perf.data.intel_bts-4.2.0-rc5+.xz on this server.
> 
>>
>> It works if I use a tip/master kernel:
>>
>> [root@perf4 ~]# uname -r
>> 4.2.0-rc7+
>> [root@perf4 ~]# uname -r
>> 4.2.0-rc7+
>> [root@perf4 ~]# perf record --per-thread -e intel_bts// usleep 1
>> [ perf record: Woken up 1 times to write data ]
>> [ perf record: Captured and wrote 1.785 MB perf.data ]
>> [root@perf4 ~]# dmesg | grep Performance
>> [    0.188477] Performance Events: PEBS fmt2+, 16-deep LBR, Broadwell
>> events, full-width counters, Intel PMU driver.
>> [root@perf4 ~]# perf report --stdio | grep -v ^# | head -10
>>
>>
>>
>>
>>     10.81%  usleep   libc-2.17.so       [.] _dl_addr                         
>>    
>>      6.56%  usleep   [kernel.kallsyms]  [.] unmap_single_vma                 
>>    
>>      3.33%  usleep   ld-2.17.so         [.] strcmp                           
>>    
>>      2.53%  usleep   [kernel.kallsyms]  [.] mem_cgroup_begin_page_stat       
>>    
>>      2.49%  usleep   ld-2.17.so         [.] _dl_lookup_symbol_x              
>>    
>>      2.39%  usleep   ld-2.17.so         [.] _dl_relocate_object              
>>    
>> [root@perf4 ~]# 
>>
>> Probably some fix for the kernel driver is missing?
> 
> Works for me though.

I looked at the code and noticed a minor issue, but I don't think it is the
cause of the problem.  I sent a fix - see "perf tools: Fix use of wrong
event when processing exit events"

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

Reply via email to