From: Michael Brown Date: Tue, 3 Jul 2007 13:44:33 +0000 (+0100) Subject: Avoid double free on I/O buffer when rtl_transmit() returns failure. X-Git-Url: http://git.etherboot.org/people/sha0/gpxe.git/commitdiff_plain/e436b993a926e7cf3eb95b918d8de3f161baeceb?ds=sidebyside Avoid double free on I/O buffer when rtl_transmit() returns failure. Convert printf() to DBG(); printf() is not allowed in drivers. --- 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; }