Hi, I use the oprofile to measured the performance of my application, there something wrong to use the oprofile.ko as following in yocto "dylan": It's known issue or bug ? root@imx6qsabresd:~# opcontrol --start --separate=lib --no-vmlinux -c 5 oprofile: using arm/armv7-ca9 ATTENTION: Use of opcontrol is discouraged. Please see the man page for operf. Detected stale lock file. Removing. Using default event: CPU_CYCLES:100000:0:1:1 Using 2.6+ OProfile kernel interface. Using log file /var/lib/oprofile/samples/oprofiled.log Daemon started. irq 126: nobody cared (try booting with the "irqpoll" option) [<800478f0>] (unwind_backtrace+0x0/0xf8) from [<800b08e4>] (__report_bad_irq+0x24/0xc0) [<800b08e4>] (__report_bad_irq+0x24/0xc0) from [<800b0c2c>] (note_interrupt+0x1ec/0x248) [<800b0c2c>] (note_interrupt+0x1ec/0x248) from [<800af168>] (handle_irq_event_percpu+0xa8/0x180) [<800af168>] (handle_irq_event_percpu+0xa8/0x180) from [<800af27c>] (handle_irq_event+0x3c/0x5c) [<800af27c>] (handle_irq_event+0x3c/0x5c) from [<800b15f0>] (handle_fasteoi_irq+0x98/0x158) [<800b15f0>] (handle_fasteoi_irq+0x98/0x158) from [<800aea68>] (generic_handle_irq+0x20/0x34) [<800aea68>] (generic_handle_irq+0x20/0x34) from [<800419b0>] (handle_IRQ+0x4c/0xb0) [<800419b0>] (handle_IRQ+0x4c/0xb0) from [<80040b4c>] (__irq_svc+0x4c/0xe8) [<80040b4c>] (__irq_svc+0x4c/0xe8) from [<80079618>] (__do_softirq+0x50/0x150) [<80079618>] (__do_softirq+0x50/0x150) from [<80079ba0>] (irq_exit+0x94/0x9c) [<80079ba0>] (irq_exit+0x94/0x9c) from [<8003b1c8>] (do_local_timer+0x70/0x94) [<8003b1c8>] (do_local_timer+0x70/0x94) from [<80040b4c>] (__irq_svc+0x4c/0xe8) Exception stack(0xba99bd68 to 0xba99bdb0) bd60: bf1b5800 bf1b6000 00000020 0000001f bf4ac000 bf1b5000 bd80: 2ad3e000 8bfe36a0 0004f4ac ba954ab0 bac5aea0 00000002 00000000 ba99bdb0 bda0: 8004dc08 8004dad0 800f0113 ffffffff [<80040b4c>] (__irq_svc+0x4c/0xe8) from [<8004dad0>] (v7_flush_kern_dcache_area+0x28/0x3c) [<8004dad0>] (v7_flush_kern_dcache_area+0x28/0x3c) from [<8004dc08>] (v6_copy_user_highpage_nonaliasing+0x40/0x54) [<8004dc08>] (v6_copy_user_highpage_nonaliasing+0x40/0x54) from [<800dc8d8>] (do_wp_page+0xe4/0x72c) [<800dc8d8>] (do_wp_page+0xe4/0x72c) from [<800de8d8>] (handle_pte_fault+0x3b0/0x7d8) [<800de8d8>] (handle_pte_fault+0x3b0/0x7d8) from [<800dedd0>] (handle_mm_fault+0xd0/0x120) [<800dedd0>] (handle_mm_fault+0xd0/0x120) from [<8004b3a0>] (do_page_fault+0x18c/0x2f8) [<8004b3a0>] (do_page_fault+0x18c/0x2f8) from [<8003b370>] (do_DataAbort+0x34/0x98) [<8003b370>] (do_DataAbort+0x34/0x98) from [<80041084>] (ret_from_exception+0x0/0x10) Exception stack(0xba99bfb0 to 0xba99bff8) bfa0: 00000328 00000000 00000000 0000029d bfc0: 00000328 00000000 47f01400 00000078 2ad3e4c0 0016b948 0000029d 7ee649c4 bfe0: 00000000 7ee649a8 2ad3e000 47e6bf20 600f0010 ffffffff handlers: [<80049c24>] armv7pmu_handle_irq Disabling IRQ #126 Profiler running. root@imx6qsabresd:~# testprogram root@imx6qsabresd:~# opcontrol --stop Stopping profiling. root@imx6qsabresd:~# opreport -l testprogram > ~/imx6.op.txt Using /var/lib/oprofile/samples/ for samples directory. error: no sample files found: profile specification too strict ?
I am getting the same error. I cross compiled oprofile 0.9.8 and upon running operf, I get this crash: irq 126: nobody cared (try booting with the "irqpoll" option) [<80048854>] (unwind_backtrace+0x0/0xf8) from [<800acf20>] (__report_bad_irq+0x28/0xc4) [<800acf20>] (__report_bad_irq+0x28/0xc4) from [<800ad264>] (note_interrupt+0x1e4/0x240) [<800ad264>] (note_interrupt+0x1e4/0x240) from [<800ab7b0>] (handle_irq_event_percpu+0xa8/0x180) [<800ab7b0>] (handle_irq_event_percpu+0xa8/0x180) from [<800ab8c4>] (handle_irq_event+0x3c/0x5c) [<800ab8c4>] (handle_irq_event+0x3c/0x5c) from [<800adc48>] (handle_fasteoi_irq+0xbc/0x154) [<800adc48>] (handle_fasteoi_irq+0xbc/0x154) from [<800ab0c0>] (generic_handle_irq+0x28/0x3c) [<800ab0c0>] (generic_handle_irq+0x28/0x3c) from [<80042870>] (handle_IRQ+0x4c/0xac) [<80042870>] (handle_IRQ+0x4c/0xac) from [<80041a0c>] (__irq_svc+0x4c/0xe8) [<80041a0c>] (__irq_svc+0x4c/0xe8) from [<80106c94>] (sys_select+0xc4/0x10c) [<80106c94>] (sys_select+0xc4/0x10c) from [<80041fc0>] (ret_fast_syscall+0x0/0x30) handlers: [<8004ab24>] armv7pmu_handle_irq Disabling IRQ #126 My hardware is SabreSD with i.MX6Q and 4.0.0 Linux BSP. I was really hoping to profile my app to see where I need to optimize. Is there a fix/workaround for this? Please advise.
I don't have any know workaround or fix for this; Daiane, do you know if it is a new or a known issue?
It is a known issue and must to be documented.
https://community.freescale.com/message/302071#302071 https://community.freescale.com/thread/307450 The error is described on ERR006259 The proposed workaround is: Symbol: HW_PERF_EVENTS [=y] │ Type : boolean │ Prompt: Enable hardware performance counter support for perf events │ Defined at arch/arm/Kconfig:1582 │ Depends on: PERF_EVENTS [=y] && CPU_HAS_PMU [=y] │ Location: │ -> Kernel Features
It´s not going to be fixed because there is no fix, only a workaround. I´m "ACCEPTING" this, if anything else should be added in future, it can be reopened or changed on demand.
I changed it to won't fix.