On Tue, Jan 2, 2024 at 4:59 PM Bartosz Golaszewski <brgl@xxxxxxxx> wrote: > From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> > > If we wait until the GPIO device's .release() callback gets invoked > before we remove it from the global device list, then we risk that > someone will look it up using gpio_device_find() between where we > dropped the last reference and before .release() is done taking a > reference again to an object that's being released. > > The device must be removed when it's being unregistered - just like how > we remove it from the GPIO bus. > > Fixes: ff2b13592299 ("gpio: make the gpiochip a real device") > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> Makes sense! Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> Yours, Linus Walleij