From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Sender: Johan Hovold Date: Fri, 26 Oct 2018 10:39:29 +0200 From: Johan Hovold To: Sasha Levin Cc: stable@vger.kernel.org, linux-kernel@vger.kernel.org, Jeremiah Mahler , Johan Hovold Subject: Re: [PATCH AUTOSEL 3.18 36/98] usb: serial: handle -ENODEV quietly in generic_submit_read_urb Message-ID: <20181026083929.GA27852@localhost> References: <20181025141853.214051-1-sashal@kernel.org> <20181025141853.214051-36-sashal@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20181025141853.214051-36-sashal@kernel.org> List-ID: Hi Sasha, On Thu, Oct 25, 2018 at 10:17:51AM -0400, Sasha Levin wrote: > From: Jeremiah Mahler > > [ Upstream commit 04f9c6e6d17584340fb6c8a9469a0e6df28876d2 ] > > If a USB serial device (e.g. /dev/ttyUSB0) with an active program is > unplugged, an -ENODEV (19) error will be produced after it gives up > trying to resubmit a read. > > usb_serial_generic_submit_read_urb - usb_submit_urb failed: -19 > > Add -ENODEV as one of the permanent errors along with -EPERM that > usb_serial_generic_submit_read_urb() handles quietly without an error. > > Signed-off-by: Jeremiah Mahler > Signed-off-by: Johan Hovold > Signed-off-by: Sasha Levin This isn't a bug fix, but more of a clean up patch and hence does not qualify for stable. So specifically the stable tag was left out on purpose. I never got a chance to talk to you in Edinburgh, but Greg mentioned you had an opt-out list for your autosel work which I'd like to be added to. I always mark bug fixes that qualify for stable as such so anything else that your process picks up would already have been considered and rejected by me. Thanks, Johan > --- > drivers/usb/serial/generic.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c > index c44b911937e8..54e170dd3dad 100644 > --- a/drivers/usb/serial/generic.c > +++ b/drivers/usb/serial/generic.c > @@ -287,7 +287,7 @@ static int usb_serial_generic_submit_read_urb(struct usb_serial_port *port, > > res = usb_submit_urb(port->read_urbs[index], mem_flags); > if (res) { > - if (res != -EPERM) { > + if (res != -EPERM && res != -ENODEV) { > dev_err(&port->dev, > "%s - usb_submit_urb failed: %d\n", > __func__, res);