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

Commit 6c4707f3 authored by Otto Meta's avatar Otto Meta Committed by Greg Kroah-Hartman
Browse files

usb: cdc-acm: fix devices not unthrottled on open



Currently CDC-ACM devices stay throttled when their TTY is closed while
throttled, stalling further communication attempts after the next open.

Unthrottling during open/activate got lost starting with kernel
3.0.0 and this patch reintroduces it.

Signed-off-by: default avatarOtto Meta <otto.patches@sister-shadow.de>
Cc: stable <stable@vger.kernel.org>
Acked-by: default avatarJohan Hovold <jhovold@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 354ab856
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -567,6 +567,14 @@ static int acm_port_activate(struct tty_port *port, struct tty_struct *tty)


	usb_autopm_put_interface(acm->control);
	usb_autopm_put_interface(acm->control);


	/*
	 * Unthrottle device in case the TTY was closed while throttled.
	 */
	spin_lock_irq(&acm->read_lock);
	acm->throttled = 0;
	acm->throttle_req = 0;
	spin_unlock_irq(&acm->read_lock);

	if (acm_submit_read_urbs(acm, GFP_KERNEL))
	if (acm_submit_read_urbs(acm, GFP_KERNEL))
		goto error_submit_read_urbs;
		goto error_submit_read_urbs;