net: mvneta: eliminate wrong call to handle rx descriptor error
There are few reasons in mvneta_rx_swbm() function when received packet
is dropped. mvneta_rx_error() should be called only if error bit [16]
is set in rx descriptor.
[gregory.clement@free-electrons.com: add fixes tag]
Cc: stable@vger.kernel.org
Fixes: dc35a10f68 ("net: mvneta: bm: add support for hardware buffer management")
Signed-off-by: Yelena Krivosheev <yelena@marvell.com>
Tested-by: Dmitri Epshtein <dima@marvell.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
ca5902a654
commit
2eecb2e04a
@@ -1962,9 +1962,9 @@ static int mvneta_rx_swbm(struct mvneta_port *pp, int rx_todo,
|
|||||||
|
|
||||||
if (!mvneta_rxq_desc_is_first_last(rx_status) ||
|
if (!mvneta_rxq_desc_is_first_last(rx_status) ||
|
||||||
(rx_status & MVNETA_RXD_ERR_SUMMARY)) {
|
(rx_status & MVNETA_RXD_ERR_SUMMARY)) {
|
||||||
|
mvneta_rx_error(pp, rx_desc);
|
||||||
err_drop_frame:
|
err_drop_frame:
|
||||||
dev->stats.rx_errors++;
|
dev->stats.rx_errors++;
|
||||||
mvneta_rx_error(pp, rx_desc);
|
|
||||||
/* leave the descriptor untouched */
|
/* leave the descriptor untouched */
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user