Closed haruzheng closed 7 months ago
Hi @haruzheng - The clock frequency read function is only called once to collect the starting value of the clock, but then any later changes should be collected as PERF_TYPE_TRACEPOINT
events.
Can you describe the problem you are seeing? Is it that the clock charts show a flat line (no change in frequency)? We have seen one Android phone recently where the clock frequency event never produces any perf events and the capture shows flat line for clock frequency.
Can you tell some details about the hardware / software that is experiencing this issue? If you are an Arm customer you may prefer to provide such details via a support case in Arm's support portal. If you do, can you please provide logs (gatord -d
) and an export of the failing capture.
Please also try updating to the latest version of Streamline. Currently Streamline 7.8 is the latest version, and 7.9 is soon to be released.
Hi @bengaineyarm
Yes, we save file. it is a flat line. and i used printf in read func, it is troggle once.
# ./gatord -d
[8463.5686184] ERROR: parseCLIArguments(GatorCLIParser.cpp:325): Streamline gatord version 770 (Streamline v7.7)
[8463.5744536] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-M3" id="ARMv7M_Cortex_M3" counter_set="DWT" cpuid="0x41c23" pmnc_counters="6" />
[8463.5746933] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-M4" id="ARMv7M_Cortex_M4" counter_set="DWT" cpuid="0x41c24" pmnc_counters="6" />
[8463.5748323] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-M7" id="ARMv7M_Cortex_M7" counter_set="DWT" cpuid="0x41c27" pmnc_counters="6" />
[8463.5749538] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-M33" id="ARMv8M_Cortex_M33" counter_set="DWT" cpuid="0x41d21" pmnc_counters="6" />
[8463.5750648] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-M55" id="ARMv8M_Cortex_M55" counter_set="DWT" cpuid="0x41d22" pmnc_counters="6" />
[8463.5752406] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-R4" id="ARMv7R_Cortex_R4" counter_set="ARMv7R_Cortex_R4" cpuid="0x41c14" pmnc_counters="3" />
[8463.5753570] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-R5" id="ARMv7R_Cortex_R5" counter_set="ARMv7R_Cortex_R5" cpuid="0x41c15" pmnc_counters="3" />
[8463.5754751] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-R7" id="ARMv7R_Cortex_R7" counter_set="ARMv7R_Cortex_R7" cpuid="0x41c17" pmnc_counters="8" />
[8463.5755849] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-R8" id="ARMv7R_Cortex_R8" counter_set="ARMv7R_Cortex_R8" cpuid="0x41c18" pmnc_counters="8" />
[8463.5757221] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-R52" id="ARMv8R_Cortex_R52" counter_set="ARMv8R_Cortex_R52" cpuid="0x41d13" pmnc_counters="4" />
[8463.5758375] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-R82" id="ARMv8R_Cortex_R82" counter_set="ARMv8R_Cortex_R82" cpuid="0x41d15" pmnc_counters="6" />
[8463.5759475] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="ARM1136" id="ARMv6_1136" counter_set="ARM_ARM11" cpuid="0x41b36" pmnc_counters="3" />
[8463.5763809] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="ARM1156" id="ARMv6_1156" counter_set="ARM_ARM11" cpuid="0x41b56" pmnc_counters="3" />
[8463.5764574] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="ARM1176" id="ARMv6_1176" counter_set="ARM_ARM11" cpuid="0x41b76" pmnc_counters="3" />
[8463.5765271] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="ARM11MPCore" id="ARMv6_11mpcore" counter_set="ARM_ARM11MPCore" cpuid="0x41b02" pmnc_counters="3" />
[8463.5765978] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A5" id="ARMv7_Cortex_A5" counter_set="ARMv7_Cortex_A5" cpuid="0x41c05" pmnc_counters="2" />
[8463.5766637] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A7" id="ARMv7_Cortex_A7" counter_set="ARMv7_Cortex_A7" cpuid="0x41c07" pmnc_counters="4" />
[8463.5767560] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A8" id="ARMv7_Cortex_A8" counter_set="ARMv7_Cortex_A8" cpuid="0x41c08" pmnc_counters="4" />
[8463.5768279] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A9" id="ARMv7_Cortex_A9" counter_set="ARMv7_Cortex_A9" cpuid="0x41c09" pmnc_counters="6" />
[8463.5768933] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A15" id="ARMv7_Cortex_A15" counter_set="ARMv7_Cortex_A15" cpuid="0x41c0f" pmnc_counters="6" />
[8463.5769538] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A17" id="ARMv7_Cortex_A12" counter_set="ARMv7_Cortex_A17" cpuid="0x41c0d" pmnc_counters="6" />
[8463.5770300] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A17" id="ARMv7_Cortex_A17" counter_set="ARMv7_Cortex_A17" cpuid="0x41c0e" pmnc_counters="6" />
[8463.5770903] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A32" id="ARMv8_Cortex_A32" counter_set="ARMv8_Cortex_A32" cpuid="0x41d01" pmnc_counters="6" />
[8463.5771647] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A34" id="ARMv8_Cortex_A34" counter_set="ARMv8_Cortex_A34" cpuid="0x41d02" pmnc_counters="6" />
[8463.5772324] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A35" id="ARMv8_Cortex_A35" counter_set="ARMv8_Cortex_A35" cpuid="0x41d04" pmnc_counters="6" />
[8463.5772985] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A53" id="ARMv8_Cortex_A53" counter_set="ARMv8_Cortex_A53" cpuid="0x41d03" pmnc_counters="6" />
[8463.5773708] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A55" id="ARMv8_Cortex_A55" counter_set="ARMv8_Cortex_A55" cpuid="0x41d05" pmnc_counters="6" />
[8463.5774665] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A57" id="ARMv8_Cortex_A57" counter_set="ARMv8_Cortex_A57" cpuid="0x41d07" pmnc_counters="6" />
[8463.5775380] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A72" id="ARMv8_Cortex_A72" counter_set="ARMv8_Cortex_A72" cpuid="0x41d08" pmnc_counters="6" />
[8463.5776066] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A73" id="ARMv8_Cortex_A73" counter_set="ARMv8_Cortex_A73" cpuid="0x41d09" pmnc_counters="6" />
[8463.5776833] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A75" id="ARMv8_Cortex_A75" counter_set="ARMv8_Cortex_A75" cpuid="0x41d0a" pmnc_counters="6" />
[8463.5777543] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A76" id="ARMv8_Cortex_A76" counter_set="ARMv8_Cortex_A76" cpuid="0x41d0b" pmnc_counters="6" />
[8463.5778233] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A77" id="ARMv8_Cortex_A77" counter_set="ARMv8_Cortex_A77" cpuid="0x41d0d" pmnc_counters="6" />
[8463.5779472] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A78" id="ARMv8_Cortex_A78" counter_set="ARMv8_Cortex_A78" cpuid="0x41d41" pmnc_counters="6" />
[8463.5780180] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A65AE" id="ARMv8_Cortex_A65AE" counter_set="ARMv8_Cortex_A65AE" cpuid="0x41d43" pmnc_counters="6" />
[8463.5780881] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A65" id="ARMv8_Cortex_A65" counter_set="ARMv8_Cortex_A65AE" cpuid="0x41d06" pmnc_counters="6" />
[8463.5781553] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A76AE" id="ARMv8_Cortex_A76AE" counter_set="ARMv8_Cortex_A76" cpuid="0x41d0e" pmnc_counters="6" />
[8463.5782223] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A78AE" id="ARMv8_Cortex_A78AE" counter_set="ARMv8_Cortex_A78" cpuid="0x41d42" pmnc_counters="6" />
[8463.5782890] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-A78C" id="ARMv8_Cortex_A78C" counter_set="ARMv8_Cortex_A78" cpuid="0x41d4b" pmnc_counters="6" />
[8463.5783556] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Neoverse-E1" id="ARMv8_Neoverse_E1" counter_set="ARMv8_Neoverse_E1" cpuid="0x41d4a" pmnc_counters="6" />
[8463.5784214] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Neoverse-N1" id="ARMv8_Neoverse_N1" counter_set="ARMv8_Neoverse_N1" cpuid="0x41d0c" pmnc_counters="6" />
[8463.5784955] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Neoverse-N2" id="ARMv8_Neoverse_N2" counter_set="ARMv8_Neoverse_N2" cpuid="0x41d49" pmnc_counters="6" />
[8463.5785623] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Neoverse-V1" id="ARMv8_Neoverse_V1" counter_set="ARMv8_Neoverse_V1" cpuid="0x41d40" pmnc_counters="6" />
[8463.5786292] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Cortex-X1" id="ARMv8_Cortex_X1" counter_set="ARMv8_Cortex_X1" cpuid="0x41d44" pmnc_counters="6" />
[8463.5786947] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="STAR" id="ARMv8M_STAR" counter_set="DWT" cpuid="0x63132" pmnc_counters="6" />
[8463.5787578] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Scorpion" id="ARMv7_Scorpion" counter_set="Scorpion" cpuid="0x5100f" pmnc_counters="4" />
[8463.5788209] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="ScorpionMP" id="ARMv7_Scorpion_MP" counter_set="ScorpionMP" cpuid="0x5102d" pmnc_counters="4" />
[8463.5788897] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Krait" id="ARMv7_Krait" counter_set="Krait" cpuid="0x51049" pmnc_counters="4" />
[8463.5789707] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo Silver" id="ARMv8_Kryo_Silver" counter_set="Other" cpuid="0x51201" pmnc_counters="6" />
[8463.5790355] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo Gold" id="ARMv8_Kryo_Gold" counter_set="Other" cpuid="0x51205" pmnc_counters="6" />
[8463.5790997] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo 250/260/280 Silver" id="ARMv8_Kryo_2x0_Silver" counter_set="ARMv8_Cortex_A53" cpuid="0x51801" pmnc_counters="6" />
[8463.5791661] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo 360/385 Silver" id="ARMv8_Kryo_3x0_Silver" counter_set="ARMv8_Cortex_A55" cpuid="0x51803" pmnc_counters="6" />
[8463.5792312] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo 460/485/495 Silver" id="ARMv8_Kryo_4x0_Silver" counter_set="ARMv8_Cortex_A55" cpuid="0x51805" pmnc_counters="6" />
[8463.5792995] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo 260/280 Gold" id="ARMv8_Kryo_2x0_Gold" counter_set="ARMv8_Cortex_A73" cpuid="0x51800" pmnc_counters="6" />
[8463.5793651] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo 360/385 Gold" id="ARMv8_Kryo_3x0_Gold" counter_set="ARMv8_Cortex_A75" cpuid="0x51802" pmnc_counters="6" />
[8463.5794322] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Kryo 460/485/495 Gold" id="ARMv8_Kryo_4x0_Gold" counter_set="ARMv8_Cortex_A76" cpuid="0x51804" pmnc_counters="6" />
[8463.5794981] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Exynos-M1/M2" id="ARMv8_Exynos_M1" counter_set="ARMv8_Exynos_M1" cpuid="0x53001" pmnc_counters="6" />
[8463.5795620] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Exynos-M3" id="ARMv8_Exynos_M3" counter_set="ARMv8_Exynos_M3" cpuid="0x53002" pmnc_counters="6" />
[8463.5796259] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Exynos-M4" id="ARMv8_Exynos_M4" counter_set="Other" cpuid="0x53003" pmnc_counters="6" />
[8463.5796887] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Exynos-M5" id="ARMv8_Exynos_M5" counter_set="Other" cpuid="0x53004" pmnc_counters="6" />
[8463.5797571] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="ThunderX" id="ARMv8_Cavium_Thunder" counter_set="ARMv8_Cavium_Thunder" cpuid="0x430a0" pmnc_counters="6" />
[8463.5798245] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="eMAG" id="ARMv8_Ampere_eMAG" counter_set="ARMv8_Ampere_eMAG" cpuid="0x50000" pmnc_counters="6" />
[8463.5798886] INFO: parseXml(xml/PmuXMLParser.cpp:214): Found <pmu core_name="Nvidia-Denver" id="ARMv8_NVIDIA_Denver" counter_set="Other" cpuid="0x4e000" pmnc_counters="6" />
[8463.5799857] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="CCI_400" id="CCI_400" counter_set="CCI_400" has_cycles_counter="true" pmnc_counters="4" />
[8463.5801154] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="CCI_400_r1" id="CCI_400_r1" counter_set="CCI_400_r1" has_cycles_counter="true" pmnc_counters="4" />
[8463.5801872] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="CCI_500" id="CCI_500" counter_set="CCI_500" has_cycles_counter="false" pmnc_counters="8" />
[8463.5802672] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="ARM_CCN_5XX" id="ccn" counter_set="ARM_CCN_5XX" has_cycles_counter="true" pmnc_counters="8" />
[8463.5803302] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="CMN-600" id="arm_cmn" counter_set="CMN_600" has_cycles_counter="true" pmnc_counters="8" />
[8463.5803958] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="L2C-310" id="l2c_310" counter_set="L2C-310" has_cycles_counter="false" pmnc_counters="2" />
[8463.5806648] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'breakpoint' for 'arm_dsu_%d'
[8463.5807276] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'software' for 'arm_dsu_%d'
[8463.5807833] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'tracepoint' for 'arm_dsu_%d'
[8463.5808370] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'armv8_pmuv3' for 'arm_dsu_%d'
[8463.5808894] INFO: parseXml(xml/PmuXMLParser.cpp:339): No matching devices for wildcard <uncore_pmu core_name="DSU" id="arm_dsu_%d" counter_set="DSU" has_cycles_counter="true" pmnc_counters="6" />
[8463.5810675] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'breakpoint' for 'smmuv3_pmcg_%s'
[8463.5811269] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'software' for 'smmuv3_pmcg_%s'
[8463.5811831] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'tracepoint' for 'smmuv3_pmcg_%s'
[8463.5812372] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'armv8_pmuv3' for 'smmuv3_pmcg_%s'
[8463.5812884] INFO: parseXml(xml/PmuXMLParser.cpp:339): No matching devices for wildcard <uncore_pmu core_name="System MMU v3" id="smmuv3_pmcg_%s" counter_set="SMMUv3" has_cycles_counter="false" pmnc_counters="64" />
[8463.5813625] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_16xx_dc_pmu" id="rtk_16xx_dc_pmu" counter_set="rtk_16xx_dc_pmu" has_cycles_counter="false" pmnc_counters="52" />
[8463.5814272] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_13xx_dc_pmu" id="rtk_13xx_dc_pmu" counter_set="rtk_13xx_dc_pmu" has_cycles_counter="false" pmnc_counters="40" />
[8463.5814896] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_dmc_pmu" id="rtk_dmc_pmu" counter_set="rtk_dmc_pmu" has_cycles_counter="false" pmnc_counters="5" />
[8463.5815493] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_13xx_ddrc_pmu" id="rtk_13xx_ddrc_pmu" counter_set="rtk_13xx_ddrc_pmu" has_cycles_counter="false" pmnc_counters="53" />
[8463.5816157] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_16xx_rbus_pmu" id="rtk_16xx_rbus_pmu" counter_set="rtk_16xx_rbus_pmu" has_cycles_counter="false" pmnc_counters="11" />
[8463.5816817] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_13xx_rbus_pmu" id="rtk_13xx_rbus_pmu" counter_set="rtk_13xx_rbus_pmu" has_cycles_counter="false" pmnc_counters="14" />
[8463.5817523] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_vpmu" id="rtk_vpmu" counter_set="rtk_vpmu" has_cycles_counter="false" pmnc_counters="4" />
[8463.5818165] INFO: parseXml(xml/PmuXMLParser.cpp:248): The hidden events of rtk_16xxb_dbus_pmu are revealed
[8463.5818540] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_16xxb_dbus_pmu" id="rtk_16xxb_dbus_pmu" counter_set="rtk_16xxb_dbus_pmu" has_cycles_counter="false" pmnc_counters="48" />
[8463.5819048] INFO: parseXml(xml/PmuXMLParser.cpp:248): The hidden events of rtk_16xxb_ddrc_pmu are revealed
[8463.5819592] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_16xxb_ddrc_pmu" id="rtk_16xxb_ddrc_pmu" counter_set="rtk_16xxb_ddrc_pmu" has_cycles_counter="false" pmnc_counters="57" />
[8463.5820237] INFO: parseXml(xml/PmuXMLParser.cpp:248): The hidden events of rtk_16xxb_rbus_pmu are revealed
[8463.5820728] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rtk_16xxb_rbus_pmu" id="rtk_16xxb_rbus_pmu" counter_set="rtk_16xxb_rbus_pmu" has_cycles_counter="false" pmnc_counters="26" />
[8463.5821383] INFO: parseXml(xml/PmuXMLParser.cpp:283): Found <uncore_pmu core_name="rxi316_pmu" id="rxi316_pmu" counter_set="rxi316_pmu" has_cycles_counter="false" pmnc_counters="10" />
[8463.5823900] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'breakpoint' for 'l3c%d'
[8463.5824553] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'software' for 'l3c%d'
[8463.5825107] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'tracepoint' for 'l3c%d'
[8463.5825634] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'armv8_pmuv3' for 'l3c%d'
[8463.5826145] INFO: parseXml(xml/PmuXMLParser.cpp:339): No matching devices for wildcard <uncore_pmu core_name="L3C" id="l3c%d" counter_set="L3C" has_cycles_counter="true" pmnc_counters="4" />
[8463.5827847] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'breakpoint' for 'mc%d'
[8463.5828439] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'software' for 'mc%d'
[8463.5828983] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'tracepoint' for 'mc%d'
[8463.5829515] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'armv8_pmuv3' for 'mc%d'
[8463.5830021] INFO: parseXml(xml/PmuXMLParser.cpp:339): No matching devices for wildcard <uncore_pmu core_name="MCU" id="mc%d" counter_set="MCU" has_cycles_counter="true" pmnc_counters="4" />
[8463.5831614] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'breakpoint' for 'mcb%d'
[8463.5832241] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'software' for 'mcb%d'
[8463.5832846] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'tracepoint' for 'mcb%d'
[8463.5833417] INFO: parseXml(xml/PmuXMLParser.cpp:322): no match 'armv8_pmuv3' for 'mcb%d'
[8463.5834273] INFO: parseXml(xml/PmuXMLParser.cpp:339): No matching devices for wildcard <uncore_pmu core_name="MCB" id="mcb%d" counter_set="MCB" has_cycles_counter="true" pmnc_counters="4" />
[8463.5838665] INFO: findTraceFsMount(Tracepoints.cpp:125): Reading /proc/mounts
[8463.5848456] INFO: findTraceFsMount(Tracepoints.cpp:130): '/dev/root / ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr,acl 0 0'
[8463.5849324] INFO: findTraceFsMount(Tracepoints.cpp:130): 'devtmpfs /dev devtmpfs rw,seclabel,relatime,size=617800k,nr_inodes=40613,mode=755 0 0'
[8463.5849919] INFO: findTraceFsMount(Tracepoints.cpp:130): 'tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0'
[8463.5850465] INFO: findTraceFsMount(Tracepoints.cpp:130): 'devpts /dev/pts devpts rw,seclabel,relatime,mode=600,ptmxmode=000 0 0'
[8463.5851074] INFO: findTraceFsMount(Tracepoints.cpp:130): 'proc /proc proc rw,relatime 0 0'
[8463.5851588] INFO: findTraceFsMount(Tracepoints.cpp:130): 'sysfs /sys sysfs rw,seclabel,relatime 0 0'
[8463.5852133] INFO: findTraceFsMount(Tracepoints.cpp:130): 'selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0'
[8463.5852620] INFO: findTraceFsMount(Tracepoints.cpp:130): 'tmpfs /mnt tmpfs rw,seclabel,nosuid,nodev,noexec,relatime,mode=755,gid=1000 0 0'
[8463.5853075] INFO: findTraceFsMount(Tracepoints.cpp:130): '/dev/block/dm-1 /vendor ext4 ro,seclabel,noatime,block_validity,delalloc,barrier,user_xattr,acl 0 0'
[8463.5853590] INFO: findTraceFsMount(Tracepoints.cpp:130): 'none /acct cgroup rw,nosuid,nodev,noexec,relatime,cpuacct 0 0'
[8463.5853987] INFO: findTraceFsMount(Tracepoints.cpp:130): 'none /dev/memcg cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0'
[8463.5854507] INFO: findTraceFsMount(Tracepoints.cpp:130): 'debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0'
[8463.5854999] INFO: findTraceFsMount(Tracepoints.cpp:130): 'none /config configfs rw,nosuid,nodev,noexec,relatime 0 0'
[8463.5855512] INFO: findTraceFsMount(Tracepoints.cpp:130): 'none /dev/cpuctl cgroup rw,nosuid,nodev,noexec,relatime,cpu 0 0'
[8463.5856007] INFO: findTraceFsMount(Tracepoints.cpp:130): 'none /dev/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset,noprefix,release_agent=/sbin/cpuset_release_agent 0 0'
[8463.5856620] INFO: findTraceFsMount(Tracepoints.cpp:130): 'cg2_bpf /dev/cg2_bpf cgroup2 rw,nosuid,nodev,noexec,relatime 0 0'
[8463.5857114] INFO: findTraceFsMount(Tracepoints.cpp:130): 'bpf /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime 0 0'
[8463.5857716] INFO: findTraceFsMount(Tracepoints.cpp:130): 'pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0'
[8463.5858216] INFO: findTraceFsMount(Tracepoints.cpp:130): 'tracefs /sys/kernel/debug/tracing tracefs rw,seclabel,relatime 0 0'
[8463.5858826] INFO: findTraceFsMount(Tracepoints.cpp:144): Found tracefs at '/sys/kernel/debug/tracing'
[8463.5864976] INFO: MaliHwCntrDriver(mali_userspace/MaliHwCntrDriver.cpp:23): There are no mali devices to create readers
[8463.5877515] INFO: readInt64FromFile(lib/Utils.cpp:63): Invalid value in file /sys/devices/system/cpu/cpu0/online:
[8463.5885155] INFO: CoreOnliner(linux/CoreOnliner.cpp:21): CoreOnliner(core=0, known=0, online=0, changed=0)
[8463.5884114] INFO: CoreOnliner(linux/CoreOnliner.cpp:21): CoreOnliner(core=1, known=1, online=1, changed=0)
[8463.5888568] INFO: CoreOnliner(linux/CoreOnliner.cpp:21): CoreOnliner(core=3, known=1, online=1, changed=0)
[8463.5889177] INFO: CoreOnliner(linux/CoreOnliner.cpp:21): CoreOnliner(core=2, known=1, online=1, changed=0)
[8463.5893975] INFO: readCpuMaskFromFile(lib/Utils.cpp:127): Reading cpumask from /sys/devices/system/cpu/cpu0/topology/core_siblings_list
[8463.5895449] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 0 to mask
[8463.5895873] INFO: readCpuMaskFromFile(lib/Utils.cpp:127): Reading cpumask from /sys/devices/system/cpu/cpu1/topology/core_siblings_list
[8463.5896900] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 1 to mask
[8463.5897651] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 0 to mask
[8463.5898473] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 2 to mask
[8463.5898047] INFO: readCpuMaskFromFile(lib/Utils.cpp:127): Reading cpumask from /sys/devices/system/cpu/cpu3/topology/core_siblings_list
[8463.5898836] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 1 to mask
[8463.5899204] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 0 to mask
[8463.5899661] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 2 to mask
[8463.5900083] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 3 to mask
[8463.5900350] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 3 to mask
[8463.5899891] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 1 to mask
[8463.5900976] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 2 to mask
[8463.5901617] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 3 to mask
[8463.5901940] INFO: readInt64FromFile(lib/Utils.cpp:63): Invalid value in file /sys/devices/system/cpu/cpu0/regs/identification/midr_el1:
[8463.5902477] INFO: readInt64FromFile(lib/Utils.cpp:63): Invalid value in file /sys/devices/system/cpu/cpu1/regs/identification/midr_el1:
[8463.5902855] INFO: readInt64FromFile(lib/Utils.cpp:63): Invalid value in file /sys/devices/system/cpu/cpu3/regs/identification/midr_el1:
[8463.5922146] INFO: readCpuMaskFromFile(lib/Utils.cpp:127): Reading cpumask from /sys/devices/system/cpu/cpu2/topology/core_siblings_list
[8463.5922855] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 0 to mask
[8463.5923413] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 1 to mask
[8463.5923936] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 2 to mask
[8463.5924460] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 3 to mask
[8463.5925758] INFO: readInt64FromFile(lib/Utils.cpp:63): Invalid value in file /sys/devices/system/cpu/cpu2/regs/identification/midr_el1:
[8463.5926840] INFO: readCpuInfo(CpuUtils.cpp:289): Read CPU 0 CLUSTER 0
[8463.5928111] INFO: readCpuInfo(CpuUtils.cpp:289): Read CPU 1 CLUSTER 0
[8463.5929291] INFO: readCpuInfo(CpuUtils.cpp:289): Read CPU 2 CLUSTER 0
[8463.5930454] INFO: readCpuInfo(CpuUtils.cpp:289): Read CPU 3 CLUSTER 0
[8463.5934421] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: processor : 0
[8463.5936508] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: model name : ARMv7 Processor rev 4 (v7l)
[8463.5938461] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: BogoMIPS : 30.00
[8463.5940375] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm aes pmull sha1 sha2 crc32
[8463.5942350] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU implementer : 0x41
[8463.5944337] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU architecture: 7
[8463.5945515] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU variant : 0x0
[8463.5947441] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU part : 0xd03
[8463.5949380] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU revision : 4
[8463.5950327] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo:
[8463.5950682] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: processor : 1
[8463.5951050] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: model name : ARMv7 Processor rev 4 (v7l)
[8463.5951415] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: BogoMIPS : 30.00
[8463.5951760] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm aes pmull sha1 sha2 crc32
[8463.5952154] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU implementer : 0x41
[8463.5952519] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU architecture: 7
[8463.5952838] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU variant : 0x0
[8463.5953180] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU part : 0xd03
[8463.5953541] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU revision : 4
[8463.5953888] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo:
[8463.5954190] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: processor : 2
[8463.5954539] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: model name : ARMv7 Processor rev 4 (v7l)
[8463.5954896] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: BogoMIPS : 30.00
[8463.5955241] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm aes pmull sha1 sha2 crc32
[8463.5955637] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU implementer : 0x41
[8463.5956003] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU architecture: 7
[8463.5956322] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU variant : 0x0
[8463.5956662] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU part : 0xd03
[8463.5957019] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU revision : 4
[8463.5957365] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo:
[8463.5957667] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: processor : 3
[8463.5958013] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: model name : ARMv7 Processor rev 4 (v7l)
[8463.5958371] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: BogoMIPS : 30.00
[8463.5958793] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm aes pmull sha1 sha2 crc32
[8463.5959205] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU implementer : 0x41
[8463.5959576] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU architecture: 7
[8463.5959895] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU variant : 0x0
[8463.5960681] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU part : 0xd03
[8463.5961073] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: CPU revision : 4
[8463.5961421] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo:
[8463.5961726] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Hardware :
[8463.5962084] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Revision : 0000
[8463.5962424] INFO: parseProcCpuInfo(CpuUtils.cpp:109): cpuinfo: Serial : 0000000000000000
[8463.5963259] INFO: updateCpuIdsFromTopologyInformation(CpuUtils_Topology.cpp:67): CPU 0 is configured to use CPUID 0x41d03
[8463.5963722] INFO: updateCpuIdsFromTopologyInformation(CpuUtils_Topology.cpp:67): CPU 1 is configured to use CPUID 0x41d03
[8463.5964076] INFO: updateCpuIdsFromTopologyInformation(CpuUtils_Topology.cpp:67): CPU 2 is configured to use CPUID 0x41d03
[8463.5964414] INFO: updateCpuIdsFromTopologyInformation(CpuUtils_Topology.cpp:67): CPU 3 is configured to use CPUID 0x41d03
[8463.5971193] INFO: detect(PrimarySourceProvider.cpp:371): Determining primary source
[8463.5971852] INFO: detect(PrimarySourceProvider.cpp:376): Trying perf API as root...
[8463.5973222] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:168): Kernel version: 4.9.119-01129-g446762f42810-dirty
[8463.5975661] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:232): perf_event_paranoid: 1
[8463.5976747] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:264): Have access to tracepoints
[8463.5978700] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:339): perf pmu: breakpoint
[8463.5979508] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:339): perf pmu: software
[8463.5980003] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:339): perf pmu: tracepoint
[8463.5980458] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:339): perf pmu: armv8_pmuv3
[8463.5984536] INFO: readCpuMaskFromFile(lib/Utils.cpp:127): Reading cpumask from /sys/bus/event_source/devices/armv8_pmuv3/cpus
[8463.5985080] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 0 to mask
[8463.5985545] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 1 to mask
[8463.5985885] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 2 to mask
[8463.5986223] INFO: readCpuMaskFromFile(lib/Utils.cpp:159): Adding cpu 3 to mask
[8463.5986574] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:386): ... cpu 0, with cpuid 0x41d03
[8463.5986930] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:386): ... cpu 1, with cpuid 0x41d03
[8463.5987314] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:386): ... cpu 2, with cpuid 0x41d03
[8463.5987640] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:386): ... cpu 3, with cpuid 0x41d03
[8463.5988034] INFO: detect(linux/perf/PerfDriverConfiguration.cpp:404): ... using generic pmu type 6 for Cortex-A53 cores
[8463.5989887] WARNING: setPerfEventMlockKb(linux/perf/PerfDriverConfiguration.cpp:89): setting property debug.perf_event_mlock_kb to 1028
^C[8464.4319909] WARNING: setPerfEventMlockKb(linux/perf/PerfDriverConfiguration.cpp:102): failed to set property debug.perf_event_mlock_kb to 1028
[8464.4329147] INFO: PerfDriver(linux/perf/PerfDriver.cpp:243): Adding cpu counters for Cortex-A53 with type 6
ID(SCHED_SWITCH) 0
ID(CPU_FREQUENCY) 0
Perf CPU is ARMv8_Cortex_A53
[8464.4343395] INFO: detect(PrimarySourceProvider.cpp:391): ...Success
[8464.4344392] SETUP: detect(PrimarySourceProvider.cpp:392): Profiling Source
Using perf API for primary data source
[8464.4353564] INFO: getStaticTree(xml/EventsXML.cpp:37): Unable to locate events.xml, using default
[8464.5746940] INFO: apply_ext_attr(xml/EventsXMLProcessor.cpp:467): counters of rtk_16xxb_dbus_pmu_cnt increases from 16 to 48 due to events revealing
[8464.5750795] INFO: apply_ext_attr(xml/EventsXMLProcessor.cpp:467): counters of rtk_16xxb_ddrc_pmu_cnt increases from 15 to 57 due to events revealing
[8464.5752770] INFO: apply_ext_attr(xml/EventsXMLProcessor.cpp:467): counters of rtk_16xxb_rbus_pmu_cnt increases from 6 to 26 due to events revealing
[8464.5871129] INFO: readEvents(linux/perf/PerfDriver.cpp:567): Using perf for ftrace_kmem_kmalloc
[8464.5872504] INFO: readEvents(linux/perf/PerfDriver.cpp:567): Using perf for ftrace_ext4_ext4_da_write
[8464.5873119] INFO: readInt64FromFile(lib/Utils.cpp:63): Invalid value in file /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/id:
[8464.5873337] INFO: getTracepointId(Tracepoints.cpp:43): Unable to read tracepoint id for f2fs/f2fs_write_end
[8464.5873569] SETUP: _getTracepointId(linux/perf/PerfDriver.cpp:207): ftrace_f2fs_f2fs_write is disabled
/sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/id was not found
[8464.5874240] INFO: readEvents(linux/perf/PerfDriver.cpp:567): Using perf for ftrace_power_clock_set_rate
[8464.5874876] INFO: readEvents(linux/perf/PerfDriver.cpp:567): Using perf for ftrace_block_block_rq_complete
[8464.5875503] INFO: readEvents(linux/perf/PerfDriver.cpp:567): Using perf for ftrace_block_block_rq_issue
[8464.5876151] INFO: readEvents(linux/perf/PerfDriver.cpp:567): Using perf for ftrace_power_cpu_idle
[8464.5930725] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_kmem_kmalloc
[8464.5931584] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_ext4_ext4_da_write
[8464.5931841] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_f2fs_f2fs_write
[8464.5932066] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_power_clock_set_rate
[8464.5932279] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_block_block_rq_complete
[8464.5932480] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_block_block_rq_issue
[8464.5932694] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_power_cpu_idle
[8464.5958986] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_kmem_kmalloc
[8464.5959645] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_ext4_ext4_da_write
[8464.5959985] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_f2fs_f2fs_write
[8464.5960632] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_power_clock_set_rate
[8464.5960840] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_block_block_rq_complete
[8464.5961031] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_block_block_rq_issue
[8464.5961234] INFO: readEvents(FtraceDriver.cpp:421): Not using ftrace for counter ftrace_power_cpu_idle
[8464.5987526] SETUP: readEvents(AtraceDriver.cpp:52): Atrace is disabled
Unable to locate notify.dex
Gator ready
In /sys/kernel/debug/tracing/trace
cfinteractive-911 [003] .... 8847.506076: cpu_frequency: state=1400000 cpu_id=0
cfinteractive-911 [003] .... 8847.506087: cpu_frequency: state=1400000 cpu_id=1
cfinteractive-911 [003] .... 8847.506090: cpu_frequency: state=1400000 cpu_id=2
cfinteractive-911 [003] .... 8847.506092: cpu_frequency: state=1400000 cpu_id=3
Check kernel config
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_TIMES=y
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
I not sure it is about.
Hi @haruzheng - all the configuration looks OK. One thing it could be was a bug we fixed for 7.8 that was affecting some other tracepoint counters, but its possible it is also affecting the CPU frequency counter...
Are you able to update to 7.8? Or alternatively, are you able to modify and rebuild gatord from source?
You can try pulling 7.8.0 tag from this repo and then modifying daemon/ProtocolVersion.h so that the version number is 770
instead of 780
. This should allow you to use the later gatord with the older Streamline and pick up the fix.
Hi @bengaineyarm
I try clean 7.8, with change version to 770. But it same. I alway no get CPU frequency.
I try to simpleperf, traceFS, ebpf tool. In simpleperf
Samples: 0
Event count: 0
But traceFS, ebpf tool has value. like
# cat /sys/kernel/debug/tracing/trace
sugov:0-1184 [002] .... 73119.468355: cpu_frequency: state=600000 cpu_id=0
sugov:0-1184 [002] .... 73119.468368: cpu_frequency: state=600000 cpu_id=1
sugov:0-1184 [002] .... 73119.468372: cpu_frequency: state=600000 cpu_id=2
sugov:0-1184 [002] .... 73119.468377: cpu_frequency: state=600000 cpu_id=3
So all those tools also fail with the same issue ? :-( that is odd.
Is it an Android device running recent Android version; is traced
running? I wonder if there is some other ftrace based capture that is interfering with perf/gatord.
What is the output from cat /sys/kernel/debug/tracing/events/power/cpu_frequency/enable
and cat /sys/kernel/debug/tracing/events/power/cpu_frequency/format
?
Perf and Simpleperf not counter value. Device is Android R.
# cat /sys/kernel/debug/tracing/events/power/cpu_frequency/enable
0
# cat /sys/kernel/debug/tracing/events/power/cpu_frequency/format
name: cpu_frequency
ID: 132
format:
field:unsigned short common_type; offset:0; size:2; signed:0;
field:unsigned char common_flags; offset:2; size:1; signed:0;
field:unsigned char common_preempt_count; offset:3; size:1; signed:0;
field:int common_pid; offset:4; size:4; signed:1;
field:u32 state; offset:8; size:4; signed:0;
field:u32 cpu_id; offset:12; size:4; signed:0;
print fmt: "state=%lu cpu_id=%lu", (unsigned long)REC->state, (unsigned long)REC->cpu_id
Maybe is user space not have permission with perf event? Because not only cpu_frequency. cpu_idle, and some event was not show in streamline.
Hi @bengaineyarm
i try to buildroot, i can get cpu_frequency counter in perf tool. but using gator in buildroot same, can't get value in streamline.
i want to get perf event value in gator. what should i do it?
So simpleperf did not work but perf does work in buildroot, and in both cases gatord does not?
How are you running perf tool? (what arguments are you giving it) ?
Can you run it in 'very verbose mode' (for example perf stat -vvv
or perf record -vvv
and show me the perf attribute description that it prints out that works.
I try ./perf stat -a -e power:* -- sleep 30 &
Performance counter stats for 'system wide':
0 power:dev_pm_qos_remove_request
0 power:dev_pm_qos_update_request
0 power:dev_pm_qos_add_request
0 power:pm_qos_update_flags
0 power:pm_qos_update_target
0 power:pm_qos_update_request_timeout
0 power:pm_qos_remove_request
0 power:pm_qos_update_request
0 power:pm_qos_add_request
0 power:power_domain_target
0 power:clock_set_parent
0 power:clock_set_rate
0 power:clock_disable
0 power:clock_enable
0 power:wakeup_source_deactivate
0 power:wakeup_source_activate
0 power:suspend_resume
0 power:device_pm_callback_end
0 power:device_pm_callback_start
2 power:cpu_frequency_limits
8 power:cpu_frequency
0 power:pstate_sample
0 power:powernv_throttle
0 power:cpu_idle
30.002926575 seconds time elapsed
add -vvv
# ./perf stat -vvv -a -e power:cpu_frequency -- sleep 30 &
# ------------------------------------------------------------
perf_event_attr:
type 2
size 112
config 0x84
sample_type IDENTIFIER
read_format TOTAL_TIME_ENABLED|TOTAL_TIME_RUNNING
disabled 1
inherit 1
exclude_guest 1
------------------------------------------------------------
sys_perf_event_open: pid -1 cpu 0 group_fd -1 flags 0x8 = 3
sys_perf_event_open: pid -1 cpu 1 group_fd -1 flags 0x8 = 4
sys_perf_event_open: pid -1 cpu 2 group_fd -1 flags 0x8 = 5
sys_perf_event_open: pid -1 cpu 3 group_fd -1 flags 0x8 = 7
echo 1100000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
t /sys/devic# cat /sys/devices/system/cpu/cpufreq/policy0/scaling_cur_freq
1100000
# echo 600000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
sys/devices/system/cpu/cpufreq/policy0/scal# cat /sys/devices/system/cpu/cpufreq/policy0/scaling_cur_freq
600000
# echo 900000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
# cat /sys/devices/system/cpu/cpufreq/policy0/scaling_cur_freq
900000
# power:cpu_frequency: 0: 0 30002068108 30002068108
power:cpu_frequency: 1: 4 30002072922 30002072922
power:cpu_frequency: 2: 0 30002075811 30002075811
power:cpu_frequency: 3: 4 30002075071 30002075071
power:cpu_frequency: 8 120008291912 120008291912
Performance counter stats for 'system wide':
8 power:cpu_frequency
30.002137537 seconds time elapsed
Hi @bengaineyarm
In buildroot, i change /proc/sys/kernel/perf_event_paranoid
from 2
to -1
.
It is work in buildroot with gator and streamline.
But but, switch to android r, using same linux kernel, it not working.
I think it maybe is Android R secure problem.
How do you think?
Hi @haruzheng - that is interesting. On Android, if you change perf_event_paranoid
do you still see the problem? Gatord should modify that file (at least if you are running as root, but i think its worth to check).
It is certainly possible their is something in Android that we are not aware of that is blocking the event. We've only seen this one on one other device, but it was also Android (11).
Are you blocked by it not working on Android, or can you use Linux?
Is your kernel very customized or based on Android stock kernel? (I will try to figure out what might be blocking)
Hi @bengaineyarm
In Android 9 is work(gator 7.8), but gator 7.7 not work. My kernel is base on android linux kernel, add our soc patch.
Maybe i can try to android 10.
I using root with gator. In Android 11, i check perf_event_paranoid is -1, so i don;t know which config cause in android 11.
Ok, definitely use 7.8 if you can. I will look at the kernel source and see if can figure out the issue.
I have an alternative work around, which is to allow gatord to use ftrace api instead of perf api to collect this tracepoint, but that requires modifications to both gatord and Streamline so would not be available until the next Streamline release (which will be 8.0 because we have just completed the internal release of 7.9 )
You mean we need update streamline version?
Maybe I need with our team discuss. I not sure my streamline licence can update to last version.
You mean we need update streamline version?
Yes; if we have to fix this by using ftrace instead of perf as it needs some post-processing, which is done by Streamline.
I not sure my streamline licence can update to last version.
Sure, IIRC most Arm DS licenses these days are time-limited rather than version-limited so hopefully you should be able to get the update. If not please raise the issue via the Arm DS support channel and we can see what we can do.
If i want to lookup this event value in gator 7.7, i can insert printf()
in where?
I looking for away is long time, but i can't found it.
It would be difficult; the counter event comes from perf in its 'mmap' ring buffer as a PERF_RECORD_SAMPLE (see https://man.archlinux.org/man/perf_event_open.2 for general details). You'd have to modify PerfBuffer and parse the event records as they are extracted from the mmap into the gator sender buffer.
What are you trying to achieve?
I want to check gator7.7 can get this event value, like state and cpu_id. Or just can't send to streamline?
Because I need to describe the gator 7.7 problem with my team member.
Thank you.
I understand. If its easier, you can raise a support case via https://support.developer.arm.com/my-cases/open-case/ and send the capture file to us and we can review it for you.
Hi @bengaineyarm
In Android R, the cpu_frequency event is block on bpfprogram. You can ref https://github.com/android/ndk/issues/1612 . And fixed in https://android-review.googlesource.com/c/platform/system/bpfprogs/+/1913987 .
Thank you.
@haruzheng thats a great discovery; thanks for the update. I will update our documentation.
Hi
Clock: Frequency event is exists, but read function just call once each cpus. So in streamline can't showable Clock: Frequency.
I used gator 7.7 + streamline 7.7. My CPU is A53 or A55, in ARM32.
Thx