mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
net: mvneta: Fix the case where the last poll did not process all rx
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>
This commit is contained in:
parent
b317538c47
commit
065fd83e1b
@ -3036,11 +3036,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
Block a user