]> git.karo-electronics.de Git - karo-tx-linux.git/commit
kdb,vt_console: Fix missed data due to pager overruns
authorJason Wessel <jason.wessel@windriver.com>
Mon, 27 Aug 2012 03:37:03 +0000 (22:37 -0500)
committerJason Wessel <jason.wessel@windriver.com>
Fri, 12 Oct 2012 11:37:23 +0000 (06:37 -0500)
commit0efbe8c330024c774692ab280a0271d688a6335c
treeff54f0141d8d9d60c9d8ea1f49842474aa882912
parente0ab490e61995beb05f817cb1d8a33c37207515e
kdb,vt_console: Fix missed data due to pager overruns

It is possible to miss data when using the kdb pager.  The kdb pager
does not pay attention to the maximum column constraint of the screen
or serial terminal.  This result is not incrementing the shown lines
correctly and the pager will print more lines that fit on the screen.
Obviously that is less than useful when using a VGA console where you
cannot scroll back.

The pager will now look at the kdb_buffer string to see how many
characters are printed.  It might not be perfect considering you can
output ASCII that might move the cursor position, but it is a
substantially better approximation for viewing dmesg and trace logs.

This also means that the vt screen needs to set the kdb COLUMNS
variable.

Cc: <stable@vger.kernel.org>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
drivers/tty/vt/vt.c
kernel/debug/kdb/kdb_io.c