Avoid double free on I/O buffer when rtl_transmit() returns failure.
authorMichael Brown <mcb30@etherboot.org>
Tue, 3 Jul 2007 13:44:33 +0000 (14:44 +0100)
committerMichael Brown <mcb30@etherboot.org>
Tue, 3 Jul 2007 13:44:33 +0000 (14:44 +0100)
Convert printf() to DBG(); printf() is not allowed in drivers.

src/drivers/net/rtl8139.c

index 6acffd9..06d40aa 100644 (file)
@@ -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;
        }