Re: [PATCH v3 00/24] gpio: rework locking and object life-time control

From: Andy Shevchenko
Date: Fri Apr 19 2024 - 09:27:56 EST


On Fri, Apr 19, 2024 at 03:03:54PM +0800, Jiawen Wu wrote:
> Hi Bartosz Golaszewski,
>
> I ran into a kernel crash problem when I pull the latest net-next.git, and
> finally it was found that is caused by this patch series merged.

Can you bisect further, i.e. which patch (now a commit message) is the culprit?

> The kernel crashed because I got gpio=0 when I called irq_find_mapping()
> and then struct irq_data *d=null, as my driver describes:
>
> int gpio = irq_find_mapping(gc->irq.domain, hwirq);
> struct irq_data *d = irq_get_irq_data(gpio);
>
> txgbe_gpio_irq_ack(d);
>
> The deeper positioning is this line in __irq_resolve_mapping().
>
> data = rcu_dereference(domain->revmap[hwirq]);
>
> So, is it the addition of SRCU infrastructure that causes this issue?

Do you have a full traceback / Oops message to share?

--
With Best Regards,
Andy Shevchenko