[openib-general] [PATCH] CQ rearm race in IPoIB

Roland Dreier rdreier at cisco.com
Fri Mar 17 15:01:42 PST 2006


    ralphc> I'm trying to fix a problem I'm seeing with IPoIB somehow
    ralphc> delaying processing of packets and sometimes timing out
    ralphc> for fragment reassembly.  I was looking at this bit of
    ralphc> code and remembering that the IB spec. says the rearm
    ralphc> isn't reliable unless you call poll afterwards and verify
    ralphc> that no new entries have been added.  I haven't verified
    ralphc> that this fixes my problem, just visual inspection based
    ralphc> on the standard as I was reading the code.

The standard says that any entries added after ib_req_notify_cq() will
generate an event.  Since ipoib_ib_completion() does ib_req_notify_cq()
before it polls the CQ, there's no window for completions to be lost.
The only race is that an extra event may cause polling an empty CQ,
but that's harmless.

So I'm pretty sure your issue is elsewhere

 - R.



More information about the general mailing list