Re: [PATCH] PCI/pwrctrl: tc9563: take i2c adapter module reference
From: Bjorn Helgaas
Date: Mon Jul 20 2026 - 07:35:56 EST
On Mon, Jul 20, 2026 at 12:12:39PM +0200, Johan Hovold wrote:
> On Fri, Jul 17, 2026 at 11:58:41AM -0500, Bjorn Helgaas wrote:
> > On Thu, Jul 16, 2026 at 03:25:32PM +0200, Johan Hovold 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 <johan@xxxxxxxxxx>
> >
> > Applied to pci/pwrctrl for v7.3, thanks!
> >
> > Gemini suggested minor commit log rewording, let me know if it makes it
> > worse. I do like the impact being mentioned in the subject:
> >
> > PCI/pwrctrl: tc9563: Avoid uninterruptible hang on in-use I2C module unload
> >
> > The I2C subsystem blocks during adapter deregistration if there are
> > consumers actively holding a reference.
> >
> > Switch to of_get_i2c_adapter_by_node(), which also takes a reference to the
> > adapter module, so an attempt to unload the module while in use will fail
> > gracefully instead of blocking uninterruptibly.
>
> No, please don't rewrite my commit messages (and especially not without
> clearly documenting that you've done).
>
> If you have any concerns about the wording, I can try to accommodate
> those in a v2.
>
> If I had considered this to be a fix (the line is admittedly blurry) I
> would also have tried to be more explicit about the impact in the
> summary. But here I think the existing summary is sufficient.
>
> Note that I've sent similar changes for other subsystems and there is
> some value in using the same patch summary (modulo subsystem preferences
> for capitalisation, etc).
You're right, I'm sorry. I used your original commit message. I
assumed this was for v7.3, but let me know if it should be for v7.2.