[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