diff options
author | Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> | 2012-02-06 23:55:15 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-02-07 13:37:30 -0500 |
commit | fdb37a7f84a58ccad24abffd54ad46d23b763e13 (patch) | |
tree | 0e9dc5efda48b1eb2430ef9d27e884c5be5305f6 /drivers/net/ethernet/renesas/sh_eth.h | |
parent | 6d25886ee2fbc05a7bf4dae5f5ae345cb73df2fd (diff) | |
download | op-kernel-dev-fdb37a7f84a58ccad24abffd54ad46d23b763e13.zip op-kernel-dev-fdb37a7f84a58ccad24abffd54ad46d23b763e13.tar.gz |
net: sh_eth: fix skb_over_panic happen
When this GETHER controller received a large frame (about 1800 bytes
or more), skb_over_panic() happened. This is because the previous
driver set the RFLR to 0x1000 (4096 bytes) and the skb allocate size
is smaller than 4096 bytes. So, the controller accepted such a frame.
The controller can discard a large frame by the RFLR setting.
So, the patch modifies the value of RFLR to mtu + ETH_HLEN +
VLAN_HLEN + ETH_FCS_LEN.
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/renesas/sh_eth.h')
-rw-r--r-- | drivers/net/ethernet/renesas/sh_eth.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/net/ethernet/renesas/sh_eth.h b/drivers/net/ethernet/renesas/sh_eth.h index 47877b1..cdbd844 100644 --- a/drivers/net/ethernet/renesas/sh_eth.h +++ b/drivers/net/ethernet/renesas/sh_eth.h @@ -575,9 +575,6 @@ enum RPADIR_BIT { RPADIR_PADR = 0x0003f, }; -/* RFLR */ -#define RFLR_VALUE 0x1000 - /* FDR */ #define DEFAULT_FDR_INIT 0x00000707 |