From 918fb437439d1bfb172e7fbdfc03b2b25664bee7 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Mon, 15 Jul 2013 12:15:48 +0200 Subject: [PATCH] [realtek] Allow extra space in RX buffers 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 Signed-off-by: Michael Brown --- src/drivers/net/realtek.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/drivers/net/realtek.h b/src/drivers/net/realtek.h index 1cd85d95..a17f963f 100644 --- a/src/drivers/net/realtek.h +++ b/src/drivers/net/realtek.h @@ -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 {