From a3021ad0e42275f0c0e6c5205746c69ab63b8dfd Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Fri, 3 Sep 2010 16:16:18 +0100 Subject: [PATCH] [rtl8139] Strip CRC from received packets The rtl8139 driver includes the Ethernet CRC within the received packet. All current protocols ignore trailing garbage, but FCoE requires the frame length to be correct (since the FCoE footer position is calculated from the end of the packet), so fix the driver to strip out the CRC. Signed-off-by: Michael Brown --- src/drivers/net/rtl8139.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/drivers/net/rtl8139.c b/src/drivers/net/rtl8139.c index 208db097..d5fb178f 100644 --- a/src/drivers/net/rtl8139.c +++ b/src/drivers/net/rtl8139.c @@ -458,6 +458,7 @@ static void rtl_poll ( struct net_device *netdev ) { rx_len - wrapped_len ); memcpy ( iob_put ( rx_iob, wrapped_len ), rtl->rx.ring, wrapped_len ); + iob_unput ( rx_iob, 4 ); /* Strip CRC */ netdev_rx ( netdev, rx_iob ); } else {