Jing Xiangfeng
d96b1b8c9f
drivers/perf: fix the missed ida_simple_remove() in ddr_perf_probe()
...
ddr_perf_probe() misses to call ida_simple_remove() in an error path.
Jump to cpuhp_state_err to fix it.
Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com >
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com >
Link: https://lore.kernel.org/r/20210617122614.166823-1-jingxiangfeng@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-17 19:45:24 +01:00
Tuan Phan
4e16f283ed
perf/arm-cmn: Fix invalid pointer when access dtc object sharing the same IRQ number
...
When multiple dtcs share the same IRQ number, the irq_friend which
used to refer to dtc object gets calculated incorrect which leads
to invalid pointer.
Fixes: 0ba64770a2 ("perf: Add Arm CMN-600 PMU driver")
Signed-off-by: Tuan Phan <tuanphan@os.amperecomputing.com >
Reviewed-by: Robin Murphy <robin.murphy@arm.com >
Link: https://lore.kernel.org/r/1623946129-3290-1-git-send-email-tuanphan@os.amperecomputing.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-17 19:45:02 +01:00
Qi Liu
773510f4d2
drivers/perf: Simplify EVENT ATTR macro in fsl_imx8_ddr_perf.c
...
Use common macro PMU_EVENT_ATTR_ID to simplify IMX8_DDR_PMU_EVENT_ATTR
Reviewed by Frank Li <Frank .li@nxp.com >
Cc: Frank Li <Frank.li@nxp.com >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Signed-off-by: Qi Liu <liuqi115@huawei.com >
Link: https://lore.kernel.org/r/1623220863-58233-7-git-send-email-liuqi115@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-11 11:18:40 +01:00
Qi Liu
b323dfe02e
drivers/perf: Simplify EVENT ATTR macro in xgene_pmu.c
...
Use common macro PMU_EVENT_ATTR_ID to simplify XGENE_PMU_EVENT_ATTR
Cc: Khuong Dinh <khuong@os.amperecomputing.com >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Signed-off-by: Qi Liu <liuqi115@huawei.com >
Link: https://lore.kernel.org/r/1623220863-58233-6-git-send-email-liuqi115@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-11 11:18:40 +01:00
Qi Liu
78b1d3c720
drivers/perf: Simplify EVENT ATTR macro in qcom_l3_pmu.c
...
Use common macro PMU_EVENT_ATTR_ID to simplify L3CACHE_EVENT_ATTR
Cc: Andy Gross <agross@kernel.org >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Signed-off-by: Qi Liu <liuqi115@huawei.com >
Link: https://lore.kernel.org/r/1623220863-58233-5-git-send-email-liuqi115@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-11 11:18:40 +01:00
Qi Liu
0bf2d72988
drivers/perf: Simplify EVENT ATTR macro in qcom_l2_pmu.c
...
Use common macro PMU_EVENT_ATTR_ID to simplify L2CACHE_EVENT_ATTR
Cc: Andy Gross <agross@kernel.org >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Signed-off-by: Qi Liu <liuqi115@huawei.com >
Link: https://lore.kernel.org/r/1623220863-58233-4-git-send-email-liuqi115@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-11 11:18:40 +01:00
Qi Liu
7ac87a8dfb
drivers/perf: Simplify EVENT ATTR macro in SMMU PMU driver
...
Use common macro PMU_EVENT_ATTR_ID to simplify SMMU_EVENT_ATTR
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Signed-off-by: Qi Liu <liuqi115@huawei.com >
Link: https://lore.kernel.org/r/1623220863-58233-3-git-send-email-liuqi115@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-11 11:18:40 +01:00
Robin Murphy
4c1daba15c
perf/smmuv3: Don't trample existing events with global filter
...
With global filtering, we only allow an event to be scheduled if its
filter settings exactly match those of any existing events, therefore
it is pointless to reapply the filter in that case. Much worse, though,
is that in doing that we trample the event type of counter 0 if it's
already active, and never touch the appropriate PMEVTYPERn so the new
event is likely not counting the right thing either. Don't do that.
CC: stable@vger.kernel.org
Signed-off-by: Robin Murphy <robin.murphy@arm.com >
Link: https://lore.kernel.org/r/32c80c0e46237f49ad8da0c9f8864e13c4a803aa.1623153312.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-11 11:15:30 +01:00
Rikard Falkeborn
59d697a99d
perf/hisi: Constify static attribute_group structs
...
These are only put in an array of pointers to const attribute_group
structs. Make them const like the other static attribute_group structs
to allow the compiler to put them in read-only memory.
Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com >
Link: https://lore.kernel.org/r/20210605221514.73449-1-rikard.falkeborn@gmail.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-08 12:49:54 +01:00
ChenXiaoSong
5ca54404e6
perf: qcom: Remove redundant dev_err call in qcom_l3_cache_pmu_probe()
...
There is a error message within devm_ioremap_resource
already, so remove the dev_err call to avoid redundant
error message.
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: ChenXiaoSong <chenxiaosong2@huawei.com >
Link: https://lore.kernel.org/r/20210608084816.1046485-1-chenxiaosong2@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-08 12:48:39 +01:00
Shaokun Zhang
814be609ba
drivers/perf: hisi: Fix data source control
...
'Data source' is a new function for HHA PMU and config / clear
interface was wrong by mistake. 'HHA_DATSRC_CTRL' register is
mainly used for data source configuration, if we enable bit0
as driver, it will go on count the event and we didn't check
it carefully. So fix the issue and do as the initial purpose.
Fixes: 932f6a99f9 ("drivers/perf: hisi: Add new functions for HHA PMU")
Reported-by: kernel test robot <lkp@intel.com >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Signed-off-by: Shaokun Zhang <zhangshaokun@hisilicon.com >
Link: https://lore.kernel.org/r/1622709291-37996-1-git-send-email-zhangshaokun@hisilicon.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-04 19:21:09 +01:00
Tian Tao
0d0f144a8f
perf: qcom_l2_pmu: move to use request_irq by IRQF_NO_AUTOEN flag
...
request_irq() after setting IRQ_NOAUTOEN as below
irq_set_status_flags(irq, IRQ_NOAUTOEN); request_irq(dev, irq...); can
be replaced by request_irq() with IRQF_NO_AUTOEN flag.
this patch is made base on "add IRQF_NO_AUTOEN for request_irq" which
is being merged: https://lore.kernel.org/patchwork/patch/1388765/
Signed-off-by: Tian Tao <tiantao6@hisilicon.com >
Acked-by: Mark Rutland <mark.rutland@arm.com >
Link: https://lore.kernel.org/r/1622595642-61678-3-git-send-email-tiantao6@hisilicon.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-02 12:48:08 +01:00
Tian Tao
3c1f2eb547
arm_pmu: move to use request_irq by IRQF_NO_AUTOEN flag
...
request_irq() after setting IRQ_NOAUTOEN as below
irq_set_status_flags(irq, IRQ_NOAUTOEN);
request_irq(dev, irq...);
can be replaced by request_irq() with IRQF_NO_AUTOEN flag.
this patch is made base on "add IRQF_NO_AUTOEN for request_irq" which
is being merged: https://lore.kernel.org/patchwork/patch/1388765/
Signed-off-by: Tian Tao <tiantao6@hisilicon.com >
Acked-by: Mark Rutland <mark.rutland@arm.com >
Link: https://lore.kernel.org/r/1622595642-61678-2-git-send-email-tiantao6@hisilicon.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-02 12:48:08 +01:00
YueHaibing
f9e36b388a
perf: arm_spe: use DEVICE_ATTR_RO macro
...
Use DEVICE_ATTR_RO() helper instead of plain DEVICE_ATTR(),
which makes the code a bit shorter and easier to read.
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Link: https://lore.kernel.org/r/20210528061738.23392-1-yuehaibing@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-01 14:25:09 +01:00
YueHaibing
21ad02e6b4
perf: xgene_pmu: use DEVICE_ATTR_RO macro
...
Use DEVICE_ATTR_RO() helper instead of plain DEVICE_ATTR(),
which makes the code a bit shorter and easier to read.
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Link: https://lore.kernel.org/r/20210528014940.4184-1-yuehaibing@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-01 14:23:46 +01:00
YueHaibing
ccbe14ce88
perf: qcom: use DEVICE_ATTR_RO macro
...
Use DEVICE_ATTR_RO() helper instead of plain DEVICE_ATTR(),
which makes the code a bit shorter and easier to read.
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Link: https://lore.kernel.org/r/20210528014749.24068-1-yuehaibing@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-01 14:23:09 +01:00
YueHaibing
29c043760e
perf: arm_pmu: use DEVICE_ATTR_RO macro
...
Use DEVICE_ATTR_RO helper instead of plain DEVICE_ATTR,
which makes the code a bit shorter and easier to read.
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Link: https://lore.kernel.org/r/20210528014130.7708-1-yuehaibing@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-01 14:22:44 +01:00
Hao Fang
2db5223731
drivers/perf: hisi: use the correct HiSilicon copyright
...
s/Hisilicon/HiSilicon/.
It should use capital S, according to the official website
https://www.hisilicon.com/en .
Signed-off-by: Hao Fang <fanghao11@huawei.com >
Link: https://lore.kernel.org/r/1621679037-15323-1-git-send-email-fanghao11@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-06-01 14:18:47 +01:00
Junhao He
eb2b22f024
drivers/perf: arm-cci: Fix checkpatch spacing error
...
Fix some coding style issues reported by checkpatch.pl, including
following types:
ERROR: need consistent spacing around '-' (ctx:WxV)
ERROR: space required before the open parenthesis '('
Signed-off-by: Junhao He <hejunhao2@hisilicon.com >
Signed-off-by: Jay Fang <f.fangjian@huawei.com >
Link: https://lore.kernel.org/r/1620736054-58412-5-git-send-email-f.fangjian@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-25 18:59:23 +01:00
Junhao He
a9f00c9760
drivers/perf: arm-cmn: Add space after ','
...
Fix a warning from checkpatch.pl.
ERROR: space required after that ',' (ctx:VxV)
Signed-off-by: Junhao He <hejunhao2@hisilicon.com >
Signed-off-by: Jay Fang <f.fangjian@huawei.com >
Link: https://lore.kernel.org/r/1620736054-58412-4-git-send-email-f.fangjian@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-25 18:59:23 +01:00
Junhao He
f265fd166b
drivers/perf: arm_pmu: Fix some coding style issues
...
Fix some coding style issues reported by checkpatch.pl, including
following types:
ERROR: spaces required around that '=' (ctx:VxW)
WARNING: Possible unnecessary 'out of memory' message
Signed-off-by: Junhao He <hejunhao2@hisilicon.com >
Signed-off-by: Jay Fang <f.fangjian@huawei.com >
Link: https://lore.kernel.org/r/1620736054-58412-3-git-send-email-f.fangjian@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-25 18:59:23 +01:00
Junhao He
27e4482075
drivers/perf: arm_spe_pmu: Fix some coding style issues
...
Fix some coding style issues reported by checkpatch.pl, including
following types:
WARNING: void function return statements are not generally useful
WARNING: Possible unnecessary 'out of memory' message
Signed-off-by: Junhao He <hejunhao2@hisilicon.com >
Signed-off-by: Jay Fang <f.fangjian@huawei.com >
Link: https://lore.kernel.org/r/1620736054-58412-2-git-send-email-f.fangjian@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-25 18:59:23 +01:00
Zou Wei
bf2367aaed
drivers/perf: Remove redundant dev_err call in tx2_uncore_pmu_init_dev()
...
There is a error message within devm_ioremap_resource
already, so remove the dev_err call to avoid redundant
error message.
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: Zou Wei <zou_wei@huawei.com >
Link: https://lore.kernel.org/r/1620715364-107460-1-git-send-email-zou_wei@huawei.com
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-25 18:57:19 +01:00
Thomas Gleixner
77b06ddc04
perf/hisi: Use irq_set_affinity()
...
These drivers use irq_set_affinity_hint() to set the affinity for the PMU
interrupts, which relies on the undocumented side effect that this function
actually sets the affinity under the hood.
Setting an hint is clearly not a guarantee and for these PMU interrupts an
affinity hint, which is supposed to guide userspace for setting affinity,
is beyond pointless, because the affinity of these interrupts cannot be
modified from user space.
Aside of that the error checks are bogus because the only error which is
returned from irq_set_affinity_hint() is when there is no irq descriptor
for the interrupt number, but not when the affinity set fails. That's on
purpose because the hint can point to an offline CPU.
Replace the mindless abuse with irq_set_affinity().
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Cc: Shaokun Zhang <zhangshaokun@hisilicon.com >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Cc: linux-arm-kernel@lists.infradead.org
Acked-by: Mark Rutland <mark.rutland@arm.com >
Link: https://lore.kernel.org/r/20210518093118.813375875@linutronix.de
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-24 11:02:00 +01:00
Thomas Gleixner
ba4489fb94
perf/imx_ddr: Use irq_set_affinity()
...
The driver uses irq_set_affinity_hint() to set the affinity for the PMU
interrupts, which relies on the undocumented side effect that this function
actually sets the affinity under the hood.
Setting an hint is clearly not a guarantee and for these PMU interrupts an
affinity hint, which is supposed to guide userspace for setting affinity,
is beyond pointless, because the affinity of these interrupts cannot be
modified from user space.
Aside of that the error checks are bogus because the only error which is
returned from irq_set_affinity_hint() is when there is no irq descriptor
for the interrupt number, but not when the affinity set fails. That's on
purpose because the hint can point to an offline CPU.
Replace the mindless abuse with irq_set_affinity().
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Cc: Frank Li <Frank.li@nxp.com >
Cc: Will Deacon <will@kernel.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Cc: Shawn Guo <shawnguo@kernel.org >
Cc: Sascha Hauer <s.hauer@pengutronix.de >
Cc: Pengutronix Kernel Team <kernel@pengutronix.de >
Cc: Fabio Estevam <festevam@gmail.com >
Cc: NXP Linux Team <linux-imx@nxp.com >
Cc: linux-arm-kernel@lists.infradead.org
Acked-by: Mark Rutland <mark.rutland@arm.com >
Link: https://lore.kernel.org/r/20210518093118.699566062@linutronix.de
Signed-off-by: Will Deacon <will@kernel.org >
2021-05-24 11:02:00 +01:00