From: Alan Cox We must exit immediately on a FIFO fill not take the end of packet path otherwise each underrun in PIO transmit mode causes a runt packet and the data is lost. Signed-off-by: Alan Cox Cc: Jeff Garzik Cc: Krzysztof Halasa Signed-off-by: Andrew Morton --- drivers/net/wan/z85230.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN drivers/net/wan/z85230.c~z85230-fix-fifo-handling drivers/net/wan/z85230.c --- a/drivers/net/wan/z85230.c~z85230-fix-fifo-handling +++ a/drivers/net/wan/z85230.c @@ -407,7 +407,7 @@ static void z8530_tx(struct z8530_channe while(c->txcount) { /* FIFO full ? */ if(!(read_zsreg(c, R0)&4)) - break; + return; c->txcount--; /* * Shovel out the byte _