Commit af311fe3 authored by Padmanabh Ratnakar's avatar Padmanabh Ratnakar Committed by David S. Miller

be2net: Fix traffic stall INTx mode

EQ is getting armed wrongly in INTx mode as INTx interrupt is taking
some time to deassert. This can cause another interrupt while NAPI is
scheduled and scheduling a NAPI in interrupt does not take effect.
This causes interrupt to be missed and traffic stalls. Fixing this by
preventing wrong arming of EQ.
Signed-off-by: default avatarPadmanabh Ratnakar <padmanabh.ratnakar@emulex.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a7047394
...@@ -1571,7 +1571,9 @@ static int event_handle(struct be_eq_obj *eqo) ...@@ -1571,7 +1571,9 @@ static int event_handle(struct be_eq_obj *eqo)
if (!num) if (!num)
rearm = true; rearm = true;
if (num || msix_enabled(eqo->adapter))
be_eq_notify(eqo->adapter, eqo->q.id, rearm, true, num); be_eq_notify(eqo->adapter, eqo->q.id, rearm, true, num);
if (num) if (num)
napi_schedule(&eqo->napi); napi_schedule(&eqo->napi);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment