Commit cfd956dc authored by Fabian Vogt's avatar Fabian Vogt Committed by Greg Kroah-Hartman
Browse files

tty: hvc_console: Call hvc_kick in hvc_write unconditionally

After hvc_write completes, call hvc_kick also in the case the output
buffer has been drained, to ensure tty_wakeup gets called.

This fixes that functions which wait for a drained buffer got stuck
occasionally.

Cc: stable <stable@kernel.org>
Closes: https://bugzilla.opensuse.org/show_bug.cgi?id=1230062


Signed-off-by: default avatarFabian Vogt <fvogt@suse.de>
Link: https://lore.kernel.org/r/2011735.PYKUYFuaPT@fvogt-thinkpad


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a1b51534
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -543,9 +543,9 @@ static ssize_t hvc_write(struct tty_struct *tty, const u8 *buf, size_t count)
	}

	/*
	 * Racy, but harmless, kick thread if there is still pending data.
	 * Kick thread to flush if there's still pending data
	 * or to wakeup the write queue.
	 */
	if (hp->n_outbuf)
	hvc_kick();

	return written;