[ofa-general] IPOB CM (NOSRQ) [PATCH V7] patch resubmit

Roland Dreier rdreier at cisco.com
Wed Jul 18 22:28:10 PDT 2007


 > 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.



More information about the general mailing list