|
@@ -3243,9 +3243,9 @@ static void __devexit rtl8169_remove_one(struct pci_dev *pdev)
|
|
static void rtl8169_set_rxbufsize(struct rtl8169_private *tp,
|
|
static void rtl8169_set_rxbufsize(struct rtl8169_private *tp,
|
|
struct net_device *dev)
|
|
struct net_device *dev)
|
|
{
|
|
{
|
|
- unsigned int mtu = dev->mtu;
|
|
|
|
|
|
+ unsigned int max_frame = dev->mtu + VLAN_ETH_HLEN + ETH_FCS_LEN;
|
|
|
|
|
|
- tp->rx_buf_sz = (mtu > RX_BUF_SIZE) ? mtu + ETH_HLEN + 8 : RX_BUF_SIZE;
|
|
|
|
|
|
+ tp->rx_buf_sz = (max_frame > RX_BUF_SIZE) ? max_frame : RX_BUF_SIZE;
|
|
}
|
|
}
|
|
|
|
|
|
static int rtl8169_open(struct net_device *dev)
|
|
static int rtl8169_open(struct net_device *dev)
|