Переглянути джерело

[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 <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 14 роки тому
джерело
коміт
a3021ad0e4
1 змінених файлів з 1 додано та 0 видалено
  1. 1
    0
      src/drivers/net/rtl8139.c

+ 1
- 0
src/drivers/net/rtl8139.c Переглянути файл

@@ -458,6 +458,7 @@ static void rtl_poll ( struct net_device *netdev ) {
458 458
 				 rx_len - wrapped_len );
459 459
 			memcpy ( iob_put ( rx_iob, wrapped_len ),
460 460
 				 rtl->rx.ring, wrapped_len );
461
+			iob_unput ( rx_iob, 4 ); /* Strip CRC */
461 462
 
462 463
 			netdev_rx ( netdev, rx_iob );
463 464
 		} else {

Завантаження…
Відмінити
Зберегти