Re: [PATCH] USB: serial: Support attaching serdev devices
From: Johan Hovold
Date: Fri Oct 02 2026 - 10:56:36 EST
On Mon, Sep 21, 2026 at 05:37:12PM +0200, Alban Bedel wrote:
> On Fri, 18 Sep 2026 16:56:38 +0200
> Johan Hovold <johan@xxxxxxxxxx> wrote:
>
> > On Thu, Sep 17, 2026 at 05:21:52PM +0200, Alban Bedel wrote:
> > > On Thu, 17 Sep 2026 15:08:11 +0100
> > > Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > > > Please read the archives for why we don't want to do this unless/until
> > > > serdev is "fixed" to properly handle dynamic device removals.
> > >
> > > All I could find is the "USB-Serial serdev support" thread from last
> > > year which sadly doesn't provides much details. Like Marco Felsch back
> > > then I tested disabling/enabling the USB port and didn't have any
> > > issue, the serdev device get removed and added back just fine. In my
> > > case the serdev driver provides an I2C bus, all devices on it get
> > > removed and added back again as well and work just fine.
> > >
> > > I really fail to see an issue in pratice, would you care to explain
> > > what I'm missing here?
> >
> > Serial drivers use hangups when tearing down their ports. Serdev does
> > not support that so the port is shut down underneath the serdev client
> > while still in use, which can lead to all sorts of issues.
>
> Hangup from modem status are ignored because serdev set C_CLOCAL.
I know since I added that in commit cda64188ca91 ("serdev: ttyport:
ignore carrier detect to avoid hangups") for this reason.
> So
> that only leave the hangup sent when the USB device is disconnected.
> But in this case, right after the hangup, the tty port device is
> removed, which in turn remove the serdev device. At this point there no
> way to comunicate with the tty anymore anyway, so I don't see what
> signaling the hangup to the serdev device right before it get removed
> would add.
You still have a window where the serdev driver is bound to a port after
its port has been torn down.
Johan