diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2015-04-14 21:28:32 (GMT) |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2015-04-14 21:28:32 (GMT) |
commit | 4b2f8838479eb2abe042e094f7d2cced6d5ea772 (patch) | |
tree | 5ef3236b354a494c8d71a572896283e44989c696 /drivers/usb/serial/generic.c | |
parent | c848791f0336914a3081ea3fe029cf177d81de81 (diff) | |
parent | 9fd85eb502a78bd812db58bd1f668b2a06ee30a5 (diff) | |
download | linux-4b2f8838479eb2abe042e094f7d2cced6d5ea772.tar.xz |
Merge branch 'devel-stable' into for-next
Diffstat (limited to 'drivers/usb/serial/generic.c')
-rw-r--r-- | drivers/usb/serial/generic.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c index ccf1df7..54e170d 100644 --- a/drivers/usb/serial/generic.c +++ b/drivers/usb/serial/generic.c @@ -258,7 +258,8 @@ void usb_serial_generic_wait_until_sent(struct tty_struct *tty, long timeout) * character or at least one jiffy. */ period = max_t(unsigned long, (10 * HZ / bps), 1); - period = min_t(unsigned long, period, timeout); + if (timeout) + period = min_t(unsigned long, period, timeout); dev_dbg(&port->dev, "%s - timeout = %u ms, period = %u ms\n", __func__, jiffies_to_msecs(timeout), @@ -268,7 +269,7 @@ void usb_serial_generic_wait_until_sent(struct tty_struct *tty, long timeout) schedule_timeout_interruptible(period); if (signal_pending(current)) break; - if (time_after(jiffies, expire)) + if (timeout && time_after(jiffies, expire)) break; } } |