Re: [PATCH] irqchip/ti-sci-inta: Use ERR_CAST inlined function instead of ERR_PTR(PTR_ERR(...))
From: Lokesh Vutla
Date: Sun Nov 10 2019 - 22:36:59 EST
On 05/11/19 5:00 PM, Markus Elfring wrote:
> From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> Date: Tue, 5 Nov 2019 12:19:39 +0100
>
> A coccicheck run provided information like the following.
>
> drivers/irqchip/irq-ti-sci-inta.c:250:9-16: WARNING: ERR_CAST can be used
> with vint_desc.
>
> Generated by: scripts/coccinelle/api/err_cast.cocci
>
> Thus adjust the exception handling in one if branch.
>
> Fixes: 9f1463b86c13277d0bd88d5ee359577ef40f4da7 ("irqchip/ti-sci-inta: Add support for Interrupt Aggregator driver")
Fixes: 9f1463b86c13 ("irqchip/ti-sci-inta: Add support for Interrupt Aggregator
driver")
With this:
Reviewed-by: Lokesh Vutla <lokeshvutla@xxxxxx>
Thanks and regards,
Lokesh
> Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> ---
> drivers/irqchip/irq-ti-sci-inta.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/irqchip/irq-ti-sci-inta.c b/drivers/irqchip/irq-ti-sci-inta.c
> index ef4d625d2d80..8f6e6b08eadf 100644
> --- a/drivers/irqchip/irq-ti-sci-inta.c
> +++ b/drivers/irqchip/irq-ti-sci-inta.c
> @@ -246,8 +246,8 @@ static struct ti_sci_inta_event_desc *ti_sci_inta_alloc_irq(struct irq_domain *d
> /* No free bits available. Allocate a new vint */
> vint_desc = ti_sci_inta_alloc_parent_irq(domain);
> if (IS_ERR(vint_desc)) {
> - mutex_unlock(&inta->vint_mutex);
> - return ERR_PTR(PTR_ERR(vint_desc));
> + event_desc = ERR_CAST(vint_desc);
> + goto unlock;
> }
>
> free_bit = find_first_zero_bit(vint_desc->event_map,
> @@ -259,6 +259,7 @@ static struct ti_sci_inta_event_desc *ti_sci_inta_alloc_irq(struct irq_domain *d
> if (IS_ERR(event_desc))
> clear_bit(free_bit, vint_desc->event_map);
>
> +unlock:
> mutex_unlock(&inta->vint_mutex);
> return event_desc;
> }
> --
> 2.23.0
>