Char: cyclades, fix potential NULL dereference

ztxdone is jumped to even if tty is NULL and tty_wakeup placed after
this label doesn't expect NULLed parameter, so this will cause an oops
in some situations (why they scheduled a wakeup there before remove
bottom half processing patch?).

wakeup only in the case when we have non-null tty struct.

Spotted by Adrian Bunk.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Jiri Slaby 2007-10-22 20:45:13 -07:00 committed by Linus Torvalds
parent 1ddd439ef9
commit 7fa57a0cd9

View File

@ -1602,8 +1602,8 @@ static void cyz_handle_tx(struct cyclades_port *info,
info->icount.tx++; info->icount.tx++;
} }
#endif #endif
ztxdone:
tty_wakeup(tty); tty_wakeup(tty);
ztxdone:
/* Update tx_put */ /* Update tx_put */
cy_writel(&buf_ctrl->tx_put, tx_put); cy_writel(&buf_ctrl->tx_put, tx_put);
} }