[PATCH 22/24] irqchip/gic-v5: Add GICv5 ITS support

Thomas Gleixner tglx at linutronix.de
Wed Apr 9 11:57:02 PDT 2025


On Tue, Apr 08 2025 at 12:50, Lorenzo Pieralisi wrote:
> +	guard(mutex)(&its->dev_alloc_lock);
> +
> +	its_dev = gicv5_its_find_device(its, device_id);
> +	if (IS_ERR(its_dev))
> +		return PTR_ERR(its_dev);
> +
> +	ret = gicv5_its_alloc_eventid(its_dev, nr_irqs, &event_id_base);
> +	if (ret)
> +		return ret;
> +
> +	ret = iommu_dma_prepare_msi(info->desc,
> +				    its->its_trans_phys_base);
> +	if (ret)
> +		goto out_eventid;

As 0-day already complained, guard() and goto does not mix. the simple
solution is to do

foo()
        guard()
        return __foo();

Then you can put the gotos into __foo()



More information about the linux-arm-kernel mailing list