diff options
author | Jan-Bernd Themann <[email protected]> | 2010-06-15 05:35:16 +0000 |
---|---|---|
committer | David S. Miller <[email protected]> | 2010-06-16 18:05:26 -0700 |
commit | a91fb143de61dce847e319ca79b9937a665ad622 (patch) | |
tree | 168a8dbf4cd8408747972d0ddec741ac8c358b9c | |
parent | 756725064fe6abbcdb43b1e64d017649b828be35 (diff) |
ehea: fix delayed packet processing
In the eHEA poll function an rmb() is required. Without that some packets
on the receive queue are not seen and thus delayed until the next interrupt
is handled for the same receive queue.
Signed-off-by: Jan-Bernd Themann <[email protected]>
Signed-off-by: Jay Vosburgh <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
-rw-r--r-- | drivers/net/ehea/ehea_main.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c index f547894ff48f..fd890faf5174 100644 --- a/drivers/net/ehea/ehea_main.c +++ b/drivers/net/ehea/ehea_main.c @@ -867,6 +867,7 @@ static int ehea_poll(struct napi_struct *napi, int budget) ehea_reset_cq_ep(pr->send_cq); ehea_reset_cq_n1(pr->recv_cq); ehea_reset_cq_n1(pr->send_cq); + rmb(); cqe = ehea_poll_rq1(pr->qp, &wqe_index); cqe_skb = ehea_poll_cq(pr->send_cq); |