From: <[EMAIL PROTECTED]>
Adapted from http://bugzilla.kernel.org/show_bug.cgi?id=6530
Reschedule the async Tx tasklet if the transmit queue was full.
Cc: Paul Mackerras <[EMAIL PROTECTED]>
[akpm: submitted before, discussion petered off inconclusively]
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---
drivers/net/ppp_async.c | 2 ++
1 file changed, 2 insertions(+)
diff -puN drivers/net/ppp_async.c~ppp_async-hang-fix drivers/net/ppp_async.c
--- a/drivers/net/ppp_async.c~ppp_async-hang-fix
+++ a/drivers/net/ppp_async.c
@@ -516,6 +516,8 @@ static void ppp_async_process(unsigned l
/* try to push more stuff out */
if (test_bit(XMIT_WAKEUP, &ap->xmit_flags) && ppp_async_push(ap))
ppp_output_wakeup(&ap->chan);
+ else if (test_bit(XMIT_FULL, &ap->xmit_flags))
+ ppp_asynctty_wakeup(ap->tty);
}
/*
_
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html