[ofa-general] [PATCH] for-2.6.25: rdma/cm: do not issue MRA ifuser rejects connection request
Sean Hefty
sean.hefty at intel.com
Wed Feb 13 14:54:33 PST 2008
> > If the listen backlog maintained in the rdma_user_cm is full,
> > it destroys the rdma_cm_id, which in turns destroys the ib_cm_id.
> > The ib_cm_id generates a REJ because the state of the ib_cm_id has
> > changed to MRA sent, versus REQ received.
>
>Not sure I understand the problem. When the listen backlog is full,
>don't we want to generate a REJ?
The current behavior is that when the backlog is full, the REQ is dropped, which
allows the remote side to retry the request, hopefully after the backlog has
cleared a little. If I recall correctly, this feature was added based on
feedback from at least Michael Tsirkin for SDP(?) support. Clients notify the
IB CM to drop the REQ by reporting -ENOMEM from the REQ callback.
The rdma_user_cm was using this, but when support to send the MRA was added to
the rdma_cm, it ended up breaking this feature. The MRA needs to be sent after
the user has examined the request, rather than before.
- Sean
More information about the general
mailing list