diff --git a/drivers/char/esp.c b/drivers/char/esp.c index 763d6d2e4b62118639c89cbd58498ff5d04c9ca1..662e9cfdcc96154447a10ea5204ed2eba4cffb51 100644 --- a/drivers/char/esp.c +++ b/drivers/char/esp.c @@ -2040,10 +2040,10 @@ static void rs_wait_until_sent(struct tty_struct *tty, int timeout) msleep_interruptible(jiffies_to_msecs(char_time)); if (signal_pending(current)) - break; + return; if (timeout && time_after(jiffies, orig_jiffies + timeout)) - break; + return; spin_lock_irqsave(&info->lock, flags); serial_out(info, UART_ESI_CMD1, ESI_NO_COMMAND);