net: mvneta: Fix the case where the last poll did not process all rx
[ Upstream commit065fd83e1b
] For the case where the last mvneta_poll did not process all RX packets, we need to xor the pp->cause_rx_tx or port->cause_rx_tx before claculating the rx_queue. Fixes:2dcf75e279
("net: mvneta: Associate RX queues with each CPU") Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a2a3baa299
commit
bb8c787be0
|
@ -2804,11 +2804,10 @@ static int mvneta_poll(struct napi_struct *napi, int budget)
|
|||
/* For the case where the last mvneta_poll did not process all
|
||||
* RX packets
|
||||
*/
|
||||
rx_queue = fls(((cause_rx_tx >> 8) & 0xff));
|
||||
|
||||
cause_rx_tx |= pp->neta_armada3700 ? pp->cause_rx_tx :
|
||||
port->cause_rx_tx;
|
||||
|
||||
rx_queue = fls(((cause_rx_tx >> 8) & 0xff));
|
||||
if (rx_queue) {
|
||||
rx_queue = rx_queue - 1;
|
||||
if (pp->bm_priv)
|
||||
|
|
Loading…
Reference in New Issue