net: mvpp2: add buffer header handling in RX
authorStefan Chulski <stefanc@marvell.com>
Tue, 25 May 2021 16:04:41 +0000 (19:04 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 May 2021 22:49:04 +0000 (15:49 -0700)
commit17f9c1b63cdd4439523cfcdf5683e5070b911f24
tree25527f7db212ac4287f968b505dad7f336a92e6a
parent65161c35554f7135e6656b3df1ce2c500ca0bdcf
net: mvpp2: add buffer header handling in RX

If Link Partner sends frames larger than RX buffer size, MAC mark it
as oversize but still would pass it to the Packet Processor.
In this scenario, Packet Processor scatter frame between multiple buffers,
but only a single buffer would be returned to the Buffer Manager pool and
it would not refill the poll.

Patch add handling of oversize error with buffer header handling, so all
buffers would be returned to the Buffer Manager pool.

Fixes: 3f518509dedc ("ethernet: Add new driver for Marvell Armada 375 network unit")
Reported-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/marvell/mvpp2/mvpp2.h
drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c