RX FIFO overflow is almost inevitable since the (usable) USB2 bus
bandwidth is approximately one quarter of the Ethernet bandwidth.
Avoid flooding the console with RX FIFO overflow messages in a
standard debug build.
With TCP SACK implemented, the RX FIFO overflow no longer causes a
catastrophic drop in throughput. Experimentation shows that HTTP
downloads now progress at a fairly smooth 250Mbps, which is around the
maximum speed attainable for a USB2 NIC.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
/* Record RX FIFO overflow if applicable */
if ( int_sts & SMSC75XX_INT_STS_RDFO_INT ) {
- DBGC ( smsc75xx, "SMSC75XX %p RX FIFO overflowed\n", smsc75xx );
+ DBGC2 ( smsc75xx, "SMSC75XX %p RX FIFO overflowed\n",
+ smsc75xx );
netdev_rx_err ( netdev, NULL, -ENOBUFS );
int_sts &= ~SMSC75XX_INT_STS_RDFO_INT;
}