aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorJan-Bernd Themann <ossthema@de.ibm.com>2010-06-15 05:35:16 +0000
committerDavid S. Miller <davem@davemloft.net>2010-06-16 18:05:26 -0700
commita91fb143de61dce847e319ca79b9937a665ad622 (patch)
tree168a8dbf4cd8408747972d0ddec741ac8c358b9c /drivers/net
parentixgbe: add comment on SFP+ ID for Active DA (diff)
downloadlinux-dev-a91fb143de61dce847e319ca79b9937a665ad622.tar.xz
linux-dev-a91fb143de61dce847e319ca79b9937a665ad622.zip
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 <themann@de.ibm.com> Signed-off-by: Jay Vosburgh <fubar@us.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ehea/ehea_main.c1
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);