Hi Doug,

On Thu, Jul 16, 2026 at 10:27:02AM -0700, Doug Anderson wrote:

> On Thu, Jul 16, 2026 at 6:22 AM Johan Hovold <[email protected]> wrote:
> >
> > The i2c subsystem currently blocks during adapter deregistration
> > whenever there are consumers holding a reference.
> >
> > Switch to using of_get_i2c_adapter_by_node() which also takes a
> > reference to the adapter module so that an attempt to unload the module
> > while in use fails gracefully instead of blocking uninterruptibly.
> >
> > Signed-off-by: Johan Hovold <[email protected]>
> > ---
> >  drivers/gpu/drm/panel/panel-edp.c | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> Reviewed-by: Douglas Anderson <[email protected]>
> 
> Worth adding any "Fixes:" tag? I guess this has been using
> of_find_i2c_adapter_by_node() for a long time...

Yeah, this comes from panel-simple which has had this issue since it was
merged in 2013. And that's a couple of years before the helper taking a
module reference even existed. 

I decided not to treat these as individual driver bugs, but perhaps the
instances added after the helper was merged could have had a Fixes tag.

> Sashiko-bot review [1] seems right, even though it's pointing out
> something that isn't really a new problem and is very much a corner
> case where someone is crafting an intentionally ridiculous device
> tree. If you agree, I wouldn't mind a followup patch fixing that, too.
> ;-)
> 
> [1] https://lore.kernel.org/r/[email protected]/

Right, I saw that one too but wrote it off as a preexisting issue.

I'll send a v2 of this one rebased on a fix for that instead.

Johan

Reply via email to