[ofa-general] Non-Signaled RDMA Read (cxgb3)

James Lentini jlentini at netapp.com
Wed Jul 30 06:27:31 PDT 2008



On Tue, 29 Jul 2008, Steve Wise wrote:

> Caitlin Bestler wrote:
> > On Tue, Jul 29, 2008 at 9:47 AM, Felix Marti <felix at chelsio.com> wrote:
> >   
> >   
> > > Roland, AFAIK, even an unsignaled WR generates a CQE when an error
> > > occurs (and then all subsequent WRs complete in error as well). Doesn't
> > > that imply that the CQ must be sized assuming that _every_ WR can
> > > generate a CQE?
> > > 
> > >     
> > 
> > Yes, that is exactly what application writers should assume.
> > 
> > They should also assume that spurious completion interrupts are possible
> > (although obviously they should be minimized) and therefore the application
> > should always be ready be woken up early and find nothing to do.
> > 
> > More complete descriptions that could be used as guidelines can be found
> > in the DAPL manuals.
> > 
> > About the only thing I think that can be done about this specific quirk is
> > to document it so that application developers are aware of it, and know that
> > it is a model-specific limitation and do not think it is a limitation of
> > RDMA
> > or iWARP. If their application does not need the notification it should
> > keep requesting unsignaled completion.
> >   
> Well if applications should handle infrequent spurious notifcations 
> where no cqe is available, then I can indeed add code in my provider 
> poll to silently throw away unsignaled read completions.

Did you consider returning an error from ib_post_send to indicate 
that an unsignalled RDMA read is not supported?

james



More information about the general mailing list