TTY: snyclinkmp: forever loop in tx_load_dma_buffer()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 27 Sep 2011 06:20:50 +0000 (09:20 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 29 Sep 2011 20:23:33 +0000 (13:23 -0700)
commit53d785ccd918d571c227d459477793872676fc02
tree538c8f731207bf916aad708b5c39f03b9ab58c55
parent268e526b935e794386d75025577b745e6bd57f13
TTY: snyclinkmp: forever loop in tx_load_dma_buffer()

My main concern here was the line that said:
copy_count = min_t(unsigned short,count,SCABUFSIZE);
"count" is an unsigned int here so the cast to unsigned short
truncates the upper bits.  So if count is 0x10000 then copy_count is
0 and the loop never exits.

"count" comes from skb->len in hdlcdev_xmit().

The other min_t() changes are just cleanups.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/tty/synclinkmp.c