> They are not quite the same. How about: > #define CM_PACKET_SIZE (ALIGN(IPOIB_CM_MTU, PAGE_SIZE))
That makes sense. > > > - .event_handler = ipoib_cm_rx_event_handler, > > > > why? seems harmless to just leave this alone for all QPs even if an > > SRQ isn't attached. > > If memory serves me right, I tried that and ran into some inexplicable > problems. > Maybe it was hang or no traffic went through -don't exactly recollect what > it was. > After this change the problem went away. Umm... I would like to get to the root cause of that. Because as far as I can see there is no problem if the event handler is called for a non-SRQ QP. The event will never be "last WQE reached" (since only a QP attached to an SRQ can generate that) and so the event handler will just return immediately and do nothing. > The atomic_dec() does happen, but that is in ipoib_cm_req_handler(). There > are > several places where allocate_and_post_rbuf_nosrq() could return an error > after > the atomic_inc(). So, there is an atomic_dec() in the calling routine. On the > other hand I could move that to allocate_and_post_rbuf_nosrq() itself. Got it. I guess that's OK although it does seem like it would be clearer if allocate_and_post_rbuf_nosrq() unwound everything on error. - R. _______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
