From e436b993a926e7cf3eb95b918d8de3f161baeceb Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Tue, 3 Jul 2007 14:44:33 +0100 Subject: [PATCH] Avoid double free on I/O buffer when rtl_transmit() returns failure. Convert printf() to DBG(); printf() is not allowed in drivers. --- src/drivers/net/rtl8139.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/drivers/net/rtl8139.c b/src/drivers/net/rtl8139.c index 6acffd9b..06d40aaa 100644 --- a/src/drivers/net/rtl8139.c +++ b/src/drivers/net/rtl8139.c @@ -380,8 +380,7 @@ static int rtl_transmit ( struct net_device *netdev, struct io_buffer *iobuf ) { /* Check for space in TX ring */ if ( rtl->tx.iobuf[rtl->tx.next] != NULL ) { - printf ( "TX overflow\n" ); - free_iob ( iobuf ); + DBG ( "TX overflow\n" ); return -ENOBUFS; }