On Sat, Nov 21, 2009 at 9:01 PM, Jason Gunthorpe
<jguntho...@obsidianresearch.com> wrote:
>
> On Sat, Nov 21, 2009 at 12:17:32PM +0100, Bart Van Assche wrote:
>
> > ib_post_send() has to request a completion notification for each WR,
> > which has a negative performance impact. My opinion is that the
> > current behavior makes ib_post_send() easier to implement, while the
> > behavior specified in the IBAS is more interesting for applications
> > that use the verbs API.
>
> It seems to me an error return from ib_post_send either means the
> caller is asking for something impossible, or the QP is wrecked, and
> is thus pretty much non-recoverable. For instance all the errors for
> mlx4 fit this pattern - and I think that is a reasonable requirement
> for any implementation of ib_post_send.
>
> So in that light the absence/presence of a completion does not seem
> important - if you get an error back you should always tear down the
> QP.
>
> Are SRP/etc calling ib_post_send in a way that ever returns errors?

ib_post_send() failures in the SRP target implementation have already
been observed. The error code returned by ib_post_send() was ENOMEM
(queue full). It would be more useful IMHO if ib_post_send() would not
post any WR instead of posting part of the WR's passed to
ib_post_send() when the 'queue full' condition is hit. Note: SRPT uses
a single SRQ per HCA, even when multiple SRP connections are active
for the same HCA.

Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to