summaryrefslogtreecommitdiff
path: root/drivers/char
diff options
context:
space:
mode:
authorRoel Kluin <roel.kluin@gmail.com>2009-06-22 17:41:56 (GMT)
committerLinus Torvalds <torvalds@linux-foundation.org>2009-06-22 18:32:23 (GMT)
commit52e3632ea603ef92757d5d0dedcd9fc8643445e3 (patch)
tree8ab96a99d898ada201b55ccb30fe7c0e6a10170f /drivers/char
parent607c268ef9a4675287e77f732071e426e62c2d86 (diff)
downloadlinux-fsl-qoriq-52e3632ea603ef92757d5d0dedcd9fc8643445e3.tar.xz
serial: fix off by one errors
In zs_console_putchar() occurs: if (zs_transmit_drain(zport, irq)) write_zsdata(zport, ch); However if in zs_transmit_drain() no empty Tx Buffer occurs, limit reaches -1 => true, and the write still occurs. This patch changes postfix to prefix decrements in this and similar functions to prevent similar mistakes in the future. This decreases the iterations with one but the chosen loop count was arbitrary anyway. In sunhv limit reaches -1, not 0, so the test is off by one. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Acked-by: David S. Miller <davem@davemloft.net> Acked-by: Maciej W. Rozycki <macro@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/char')
0 files changed, 0 insertions, 0 deletions