]> git.karo-electronics.de Git - karo-tx-linux.git/commit
powerpc/pseries: Fix hvterm_raw_get_chars to accept < 16 chars, fixing xmon
authorAnton Blanchard <anton@samba.org>
Tue, 12 Jul 2011 19:19:57 +0000 (19:19 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Tue, 19 Jul 2011 05:13:07 +0000 (15:13 +1000)
commit19df9abdd30a0448e5940c6aa3527096bb69aca7
tree207168aac6dc399419eb0048c4ba47e69628a7cf
parent88962934226c570717c346684ab5ed2f09c2b359
powerpc/pseries: Fix hvterm_raw_get_chars to accept < 16 chars, fixing xmon

commit 4d2bb3f50036 (powerpc/pseries: Re-implement HVSI as part of
hvc_vio) changed udbg_getc to be based on hvterm_raw_get_chars.
Unfortunately hvterm_raw_get_chars returns -EAGAIN if you ask
for anything less than 16 characters. As a result xmon no longer
accepts input and prints a stream of junk to the screen.

The recent change highlights a problem that xmon on pseries VIO
has had all along, that it can drop input characters. The issue
is the hypervisor call does not take a count argument and can
return up to 16 characters.

This patch adds a per vterm buffer that we copy input data into
and give it out as requested.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
drivers/tty/hvc/hvc_vio.c