linux/drivers/s390
Sascha Silbe c14f2aac7a s390/con3270: fix use of uninitialised data
con3270 contains an optimisation that reduces the amount of data to be
transmitted to the 3270 terminal by putting a Repeat to Address (RA)
order into the data stream. The RA order itself takes up space, so
con3270 only uses it if there's enough space left in the line
buffer. Otherwise it just pads out the line manually.

For lines too long to include the RA order, one byte was left
uninitialised. This was caused by an off-by-one bug in the loop that
pads out the line. Since the buffer is allocated from a common pool,
the single byte left uninitialised contained some previous buffer
content. Usually this was just a space or some character (which can
result in clutter but is otherwise harmless). Sometimes, however, it
was a Repeat to Address order, messing up the entire screen layout and
causing the display to send the entire buffer content on every
keystroke.

Fixes: f51320a5 ("[PATCH] s390: new 3270 driver.") (tglx/history.git)
Reported-by: Liu Jing <liujbjl@linux.vnet.ibm.com>
Tested-by: Jing Liu <liujbjl@linux.vnet.ibm.com>
Tested-by: Yang Chen <bjcyang@linux.vnet.ibm.com>
Signed-off-by: Sascha Silbe <silbe@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2016-09-30 09:13:18 +02:00
..
block s390/dasd: add missing \n to end of dev_err messages 2016-09-28 09:18:48 +02:00
char s390/con3270: fix use of uninitialised data 2016-09-30 09:13:18 +02:00
cio s390/cio: fix accidental interrupt enabling during resume 2016-09-30 09:13:11 +02:00
crypto s390/zcrypt: fix possible memory leak in ap_module_init() 2016-07-31 06:10:41 -04:00
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-06 10:35:22 -07:00
scsi s390: Remove deprecated create_singlethread_workqueue 2016-09-06 10:59:57 +02:00
virtio virtio/s390: deprecate old transport 2016-08-09 13:42:41 +03:00
Makefile virtio/s390: rename drivers/s390/kvm -> drivers/s390/virtio 2015-07-07 14:27:06 +03:00