net: calxedaxgmac: throw away overrun frames
authorRob Herring <rob.herring@calxeda.com>
Wed, 16 Jan 2013 13:36:37 +0000 (13:36 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 14 Feb 2013 18:48:09 +0000 (10:48 -0800)
commit665dbf232cda5132238a4c525f8ab62d65fa0cf9
treed77b572f1f2c13c8764750c6954d5dc77e703101
parent6a56fc1543efd880e4b26cb44e230328c2e97c66
net: calxedaxgmac: throw away overrun frames

[ Upstream commit d6fb3be544b46a7611a3373fcaa62b5b0be01888 ]

The xgmac driver assumes 1 frame per descriptor. If a frame larger than
the descriptor's buffer size is received, the frame will spill over into
the next descriptor. So check for received frames that span more than one
descriptor and discard them. This prevents a crash if we receive erroneous
large packets.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/calxeda/xgmac.c