diff mbox series

iommu: rockchip: Drop verbose prints in the interrupt handler

Message ID 20180830222832.16766-1-ezequiel@collabora.com (mailing list archive)
State New, archived
Headers show
Series iommu: rockchip: Drop verbose prints in the interrupt handler | expand

Commit Message

Ezequiel Garcia Aug. 30, 2018, 10:28 p.m. UTC
Printing verbosely via WARN macros and friends in interrupt handlers
is strongly discouraged. Drop them and use proper ratelimited
prints.

Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
---
 drivers/iommu/rockchip-iommu.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

Comments

Heiko Stübner Sept. 10, 2018, 2:14 p.m. UTC | #1
Am Freitag, 31. August 2018, 00:28:32 CEST schrieb Ezequiel Garcia:
> Printing verbosely via WARN macros and friends in interrupt handlers
> is strongly discouraged. Drop them and use proper ratelimited
> prints.
> 
> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>

Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Joerg Roedel Sept. 25, 2018, 11:29 a.m. UTC | #2
On Thu, Aug 30, 2018 at 07:28:32PM -0300, Ezequiel Garcia wrote:
> Printing verbosely via WARN macros and friends in interrupt handlers
> is strongly discouraged. Drop them and use proper ratelimited
> prints.
> 
> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
> ---
>  drivers/iommu/rockchip-iommu.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)

This doesn't apply cleanly to v4.19-rc5, can you please base the patch
on that tag, add the Reviewed-by and re-send?

Thanks,

	Joerg
Ezequiel Garcia Sept. 26, 2018, 5:31 p.m. UTC | #3
On Tue, 2018-09-25 at 13:29 +0200, Joerg Roedel wrote:
> On Thu, Aug 30, 2018 at 07:28:32PM -0300, Ezequiel Garcia wrote:
> > Printing verbosely via WARN macros and friends in interrupt handlers
> > is strongly discouraged. Drop them and use proper ratelimited
> > prints.
> > 
> > Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
> > ---
> >  drivers/iommu/rockchip-iommu.c | 10 ++++++----
> >  1 file changed, 6 insertions(+), 4 deletions(-)
> 
> This doesn't apply cleanly to v4.19-rc5, can you please base the patch
> on that tag, add the Reviewed-by and re-send?
> 

Well, after looking at the latest code, now I'm wondering why Marc
changed the WARN_ON with a WARN_ON_ONCE, instead of a less verbose
ratelimited print.
Marc Zyngier Sept. 27, 2018, 8:10 a.m. UTC | #4
On 26/09/18 18:31, Ezequiel Garcia wrote:
> On Tue, 2018-09-25 at 13:29 +0200, Joerg Roedel wrote:
>> On Thu, Aug 30, 2018 at 07:28:32PM -0300, Ezequiel Garcia wrote:
>>> Printing verbosely via WARN macros and friends in interrupt handlers
>>> is strongly discouraged. Drop them and use proper ratelimited
>>> prints.
>>>
>>> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
>>> ---
>>>   drivers/iommu/rockchip-iommu.c | 10 ++++++----
>>>   1 file changed, 6 insertions(+), 4 deletions(-)
>>
>> This doesn't apply cleanly to v4.19-rc5, can you please base the patch
>> on that tag, add the Reviewed-by and re-send?
>>
> 
> Well, after looking at the latest code, now I'm wondering why Marc
> changed the WARN_ON with a WARN_ON_ONCE, instead of a less verbose
> ratelimited print.

WARN_ONCE does it exactly once. A rate-limited printk will still spit as 
many messages as you want.

Thanks,

	M.
diff mbox series

Patch

diff --git a/drivers/iommu/rockchip-iommu.c b/drivers/iommu/rockchip-iommu.c
index 054cd2c8e9c8..21bb9a30bc64 100644
--- a/drivers/iommu/rockchip-iommu.c
+++ b/drivers/iommu/rockchip-iommu.c
@@ -523,11 +523,13 @@  static irqreturn_t rk_iommu_irq(int irq, void *dev_id)
 	irqreturn_t ret = IRQ_NONE;
 	int i;
 
-	if (WARN_ON(!pm_runtime_get_if_in_use(iommu->dev)))
-		return 0;
+	if (!pm_runtime_get_if_in_use(iommu->dev))
+		return ret;
 
-	if (WARN_ON(clk_bulk_enable(iommu->num_clocks, iommu->clocks)))
+	if (clk_bulk_enable(iommu->num_clocks, iommu->clocks)) {
+		dev_err_ratelimited(iommu->dev, "couldn't enable clocks\n");
 		goto out;
+	}
 
 	for (i = 0; i < iommu->num_mmu; i++) {
 		int_status = rk_iommu_read(iommu->bases[i], RK_MMU_INT_STATUS);
@@ -544,7 +546,7 @@  static irqreturn_t rk_iommu_irq(int irq, void *dev_id)
 			flags = (status & RK_MMU_STATUS_PAGE_FAULT_IS_WRITE) ?
 					IOMMU_FAULT_WRITE : IOMMU_FAULT_READ;
 
-			dev_err(iommu->dev, "Page fault at %pad of type %s\n",
+			dev_err_ratelimited(iommu->dev, "Page fault at %pad of type %s\n",
 				&iova,
 				(flags == IOMMU_FAULT_WRITE) ? "write" : "read");