Re: Clarification on support of arm32 with kernel4.1 for oprofile 1.2.0

William Cohen <[email protected]>
Newsgroups gmane.linux.oprofile
Message-ID <[email protected]>
On 02/15/2018 11:07 AM, Michael Petlan wrote:
> On Thu, 15 Feb 2018, Vinoth Natarajan wrote:
>> Hello Michael,
>> Thanks so much for the help.
>>
>> Cross compiled the hello.c with crosstools-arm-gcc-5.3-linux-4.1-glibc-2.22
>> and tested the executable on the target(arm32)
>>
>> Received the following error
>> " ./hello
>> Error opening leader 1"
>>
> 
> This points to the kernel perf subsystem. It cannot even open a simple event.
> Not an OProfile's fault.
> 
>>
>> Following are the kernel configs related to PERF in target
>>
>>  cat /tmp/test |grep PERF
>>
>> CONFIG_HAVE_PERF_EVENTS=y
>> CONFIG_PERF_USE_VMALLOC=y
>> CONFIG_PERF_EVENTS=y
>> # CONFIG_DEBUG_PERF_USE_VMALLOC is not set
>> CONFIG_HAVE_PERF_REGS=y
>> CONFIG_HAVE_PERF_USER_STACK_DUMP=y
>> # CONFIG_PCIEASPM_PERFORMANCE is not set
>> # CONFIG_HW_PERF_EVENTS is not set
> 
> I believe you need CONFIG_HW_PERF_EVENTS=y on ARM.
> 
>> # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
>> # CONFIG_CPU_FREQ_GOV_PERFORMANCE is not set
>> # CONFIG_CLS_U32_PERF is not set
>>
>> Could you please share your feedback on this.
> 
> You may also try to grep for perf in logs:
> 
> # dmesg | grep -i -e perf -e pmu
> [    1.375699] hw perfevents: enabled with armv8_pmuv3_0 PMU driver, 5 counters available
> [    1.403155] kvm [1]: GICV region size/alignment is unsafe, using trapping (reduced performance)
> [    2.036285] xgene-pmu APMC0D5C:00: X-Gene PMU version 2
> 
> ^^^ This is a log from the moment when my kernel identified and initialized
> the PMU. You should see something like that too. Or better, after recompiling
> your kernel with CONFIG_HW_PERF_EVENTS=y and booting, you should see something
> like this (PMU-related logs). If there is some error in PMU init, you will see
> it in the logs.
> 
> I am afraid that without CONFIG_HW_PERF_EVENTS=y you cannot use the events.
> 
> However, I don't guarantee that with CONFIG_HW_PERF_EVENTS=y it works. There
> can be some firmware issues, ACPI issues, etc. I roughly remember some issue
> when you'd need to boot with acpi=off to access the events, etc.
> 
> Cheers,
> Michael

Hi,

Another way that perf may fail to work is due to the device tree for the platform not describing the performance monitoring hardware:

https://bugzilla.redhat.com/show_bug.cgi?id=741325

There also may be some ARM processors that don't have performance monitoring hardware or that kernel perf support doesn't recognize.

What 32-bit ARM platform is the target?

-Will


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
oprofile-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oprofile-list
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.