]> git.baikalelectronics.ru Git - kernel.git/commit
be2net: fix EQ from getting full while cleaning RX CQ
authorSathya Perla <sathya.perla@emulex.com>
Wed, 8 May 2013 02:05:49 +0000 (02:05 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 8 May 2013 18:59:48 +0000 (11:59 -0700)
commit4e95ee772963cc59a23fe3638927b0401c5ff582
treeb8921ec16c01c4c76dd73d775d9fc05fd8f41ddb
parent8c03ebd8aefd18a0067b7ef2cf1dd32f5cca20c9
be2net: fix EQ from getting full while cleaning RX CQ

While cleaning RX queues, the CQ DB may be rung several times (with rearm)
while waiting for the flush compl. Each CQ-notify with rearm can result in
an event. The EQ may get full resulting in a HW error.

Fix this by not re-arming the CQ while notifying a valid completion.
Also, there's no need to wait for 1ms after destroying RXQ, as the code in
be_rx_cq_clean() waits for the flush compl to arrive.

Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/emulex/benet/be_main.c