Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a283d080 authored by Johan Hovold's avatar Johan Hovold Committed by Greg Kroah-Hartman
Browse files

USB: sierra: do not resume I/O on closed ports



Do not resume any I/O, including the delayed write queue, on closed
ports.

Note that this currently has no functional impact due to the
usb_autopm_get_interface() in close(), but that call is about to be
removed by a follow-up patch.

Signed-off-by: default avatarJohan Hovold <jhovold@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 40d88983
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -1013,7 +1013,7 @@ static int sierra_resume(struct usb_serial *serial)
		port = serial->port[i];
		portdata = usb_get_serial_port_data(port);

		if (!portdata)
		if (!portdata || !portdata->opened)
			continue;

		while ((urb = usb_get_from_anchor(&portdata->delayed))) {
@@ -1036,12 +1036,10 @@ static int sierra_resume(struct usb_serial *serial)
			}
		}

		if (portdata->opened) {
		err = sierra_submit_rx_urbs(port, GFP_ATOMIC);
		if (err)
			ec++;
	}
	}
	intfdata->suspended = 0;
	spin_unlock_irq(&intfdata->susp_lock);