]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[realtek] Allow extra space in RX buffers
authorMichael Brown <mcb30@ipxe.org>
Mon, 15 Jul 2013 10:15:48 +0000 (12:15 +0200)
committerMichael Brown <mcb30@ipxe.org>
Mon, 15 Jul 2013 10:19:37 +0000 (12:19 +0200)
Some hardware (observed with an onboard RTL8168) will erroneously
report a buffer overflow error if the received packet exactly fills
the receive buffer.

Fix by adding an extra four bytes of padding to each receive buffer.

Debugged-by: Thomas Miletich <thomas.miletich@gmail.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/drivers/net/realtek.h

index 1cd85d95c0c56bd91ff32381cccebc9aab258918..a17f963f26e0cffa8accda76d33fcfd84e882a6d 100644 (file)
@@ -226,7 +226,8 @@ enum realtek_legacy_status {
 #define RTL_NUM_RX_DESC 4
 
 /** Receive buffer length */
-#define RTL_RX_MAX_LEN ( ETH_FRAME_LEN + 4 /* VLAN */ + 4 /* CRC */ )
+#define RTL_RX_MAX_LEN \
+       ( ETH_FRAME_LEN + 4 /* VLAN */ + 4 /* CRC */ + 4 /* extra space */ )
 
 /** A Realtek descriptor ring */
 struct realtek_ring {