On 2023-07-19 11:54 AM, Andy Shevchenko wrote: > On Wed, Jul 19, 2023 at 09:34:44AM -0700, Samuel Holland wrote: >> Do not parse the devicetree again when the data is already available >> from the IRQ subsystem. This follows the example of the ThunderX and >> X-Gene GPIO drivers. The ngpio check is needed to avoid a possible >> out-of-bounds read. > > ... > >> - girq->parent_domain = parent; >> + girq->parent_domain = irq_get_irq_data(chip->irq_number[0])->domain; > > For the sake of readability I would like to leave parent variable > and assign it beforehand somewhere upper in the code. OK. > Also, can irq_get_irq_data() return NULL? Needs a comment on top > of that assignment or an additional check. No, the earlier loop already verified the IRQ number was valid. I don't think it can later become invalid. In any case, we already dereference the result of irq_get_irq_data(irq_number[foo]) in sifive_gpio_child_to_parent_hwirq().