[openib-general] [PATCH/RFC 1/2] IB: Return "maybe_missed_event" hint from ib_req_notify_cq()
Shirley Ma
xma at us.ibm.com
Thu Nov 9 21:41:18 PST 2006
Roland Dreier <rdreier at cisco.com> wrote on 10/19/2006 09:10:35 PM:
Roland,
> I looked over my code again, and I don't see anything obviously wrong,
> but it's quite possible I made a mistake that I just can't see right
> now (like reversing a truth value somewhere). Someone who knows how
> ehca works might be able to spot the error.
>
> - R.
Your code is OK. I just found the problem here.
+ if (empty) {
+ netif_rx_complete(dev);
+ ib_req_notify_cq(priv->cq, IB_CQ_NEXT_COMP,
&missed_event);
+ if (unlikely(missed_event) &&
netif_rx_reschedule(dev, 0))
+ goto repoll;
+
+ return 0;
+ }
netif_rx_complete() should be called right before return. It does improve
none scaling performance with this patch, but reduce scaling performance.
+ if (empty) {
+ ib_req_notify_cq(priv->cq, IB_CQ_NEXT_COMP,
&missed_event);
+ if (unlikely(missed_event) &&
netif_rx_reschedule(dev, 0))
+ goto repoll;
+ netif_rx_complete(dev);
+
+ return 0;
+ }
Any other reason, calling netif_rx_complete() while still possibably within
napi?
Thanks
Shirley Ma
IBM Linux Technology Center
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20061109/b693a167/attachment.html>
More information about the general
mailing list