linux-mediatek.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
  • * Re: [PATCH v2 01/15] genirq/devres: Add error information printing for devm_request_threaded_irq()
           [not found] <20230627101215.58798-1-frank.li@vivo.com>
           [not found] ` <20230627110025.vgtplc6nluiiuvoh@pengutronix.de>
    @ 2023-07-03 16:07 ` Ahmad Fatoum
      1 sibling, 0 replies; 8+ messages in thread
    From: Ahmad Fatoum @ 2023-07-03 16:07 UTC (permalink / raw)
      To: Yangtao Li, miquel.raynal, rafael, daniel.lezcano, amitk,
    	rui.zhang, mmayer, bcm-kernel-feedback-list, florian.fainelli,
    	shawnguo, s.hauer, kernel, festevam, linux-imx, agross, andersson,
    	konrad.dybcio, thara.gopinath, heiko, mcoquelin.stm32,
    	alexandre.torgue, thierry.reding, jonathanh, tglx, matthias.bgg,
    	angelogioacchino.delregno, srinivas.pandruvada,
    	DLG-Adam.Ward.opensource, shangxiaojing, bchihi, wenst,
    	u.kleine-koenig, hayashi.kunihiko, niklas.soderlund+renesas,
    	chi.minghao, johan+linaro, jernej.skrabec
      Cc: linux-pm, linux-arm-msm, linux-kernel, linux-rockchip,
    	linux-mediatek, linux-tegra, linux-stm32, linux-arm-kernel
    
    On 27.06.23 12:12, Yangtao Li wrote:
    > Ensure that all error handling branches print error information. In this
    > way, when this function fails, the upper-layer functions can directly
    > return an error code without missing debugging information. Otherwise,
    > the error message will be printed redundantly or missing.
    > 
    > There are more than 700 calls to the devm_request_threaded_irq method.
    > Most drivers only request one interrupt resource, and these error
    > messages are basically the same. If error messages are printed
    > everywhere, more than 1000 lines of code can be saved by removing the
    > msg in the driver.
    > 
    > Signed-off-by: Yangtao Li <frank.li@vivo.com>
    > ---
    >  kernel/irq/devres.c | 5 ++++-
    >  1 file changed, 4 insertions(+), 1 deletion(-)
    > 
    > diff --git a/kernel/irq/devres.c b/kernel/irq/devres.c
    > index f6e5515ee077..fcb946ffb7ec 100644
    > --- a/kernel/irq/devres.c
    > +++ b/kernel/irq/devres.c
    > @@ -58,8 +58,10 @@ int devm_request_threaded_irq(struct device *dev, unsigned int irq,
    >  
    >  	dr = devres_alloc(devm_irq_release, sizeof(struct irq_devres),
    >  			  GFP_KERNEL);
    > -	if (!dr)
    > +	if (!dr) {
    > +		dev_err(dev, "Failed to allocate device resource data\n");
    
    Why not use dev_err_probe too? Could turn this block into a oneliner.
    
    >  		return -ENOMEM;
    > +	}
    >  
    >  	if (!devname)
    >  		devname = dev_name(dev);
    > @@ -67,6 +69,7 @@ int devm_request_threaded_irq(struct device *dev, unsigned int irq,
    >  	rc = request_threaded_irq(irq, handler, thread_fn, irqflags, devname,
    >  				  dev_id);
    >  	if (rc) {
    > +		dev_err_probe(dev, rc, "Failed to request threaded irq%d: %d\n", irq, rc);
    
    No need to format rc with %d. dev_err_probe will already do this for you.
    
    >  		devres_free(dr);
    >  		return rc;
    >  	}
    
    -- 
    Pengutronix e.K.                           |                             |
    Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
    31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
    Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
    
    
    
    ^ permalink raw reply	[flat|nested] 8+ messages in thread

  • end of thread, other threads:[~2023-07-03 16:08 UTC | newest]
    
    Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
    -- links below jump to the message on this page --
         [not found] <20230627101215.58798-1-frank.li@vivo.com>
         [not found] ` <20230627110025.vgtplc6nluiiuvoh@pengutronix.de>
    2023-06-30 11:11   ` [PATCH v2 01/15] genirq/devres: Add error information printing for devm_request_threaded_irq() Thomas Gleixner
    2023-07-03  9:13     ` Yangtao Li
    2023-07-03  9:53       ` Uwe Kleine-König
    2023-07-03 11:37         ` Yangtao Li
    2023-07-03 12:15     ` Yangtao Li
    2023-07-03 12:19     ` Yangtao Li
         [not found]     ` <247a8166-f131-2d07-ec2b-479a4c19297f@vivo.com>
    2023-07-03 12:28       ` Krzysztof Kozlowski
    2023-07-03 16:07 ` Ahmad Fatoum
    

    This is a public inbox, see mirroring instructions
    for how to clone and mirror all data and code used for this inbox;
    as well as URLs for NNTP newsgroup(s).