]> git.baikalelectronics.ru Git - kernel.git/commit
dpaa2-eth: Fix ndo_stop routine
authorIoana Ciocoi Radulescu <ruxandra.radulescu@nxp.com>
Wed, 16 Jan 2019 16:51:44 +0000 (16:51 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Jan 2019 23:37:02 +0000 (15:37 -0800)
commite76b122f6ded2b3b4fbbc18fe48b0f8020b53acc
tree7e39a4d468537cafeae72915e8eafa055084e6a8
parentb4d235b034d91beefb2306a00f99dfab9e16fd61
dpaa2-eth: Fix ndo_stop routine

In the current implementation, on interface down we disabled NAPI and
then manually drained any remaining ingress frames. This could lead
to a situation when, under heavy traffic, the data availability
notification for some of the channels would not get rearmed correctly.

Change the implementation such that we let all remaining ingress frames
be processed as usual and only disable NAPI once the hardware queues
are empty.

We also add a wait on the Tx side, to allow hardware time to process
all in-flight Tx frames before issueing the disable command.

Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c