[ofa-general] Requesting CQ notifications
Steve Wise
swise at opengridcomputing.com
Tue May 1 10:18:56 PDT 2007
On Wed, 2007-04-25 at 18:58 -0700, Roland Dreier wrote:
> > Is there a differentiation between multiple CQE's being in the CQ
> > vs. CQE's being arriving into the CQ when using completion
> > notifications?
> >
> > For example, assume I have the following order of events:
> >
> >
> > 2 CQEs arrive
> >
> > select() returns readable for comp. channel
> >
> > ibv_get_cq_event() returns event
> >
> > ibv_req_notify_cq(cq, 0)
> >
> > ibv_poll_cq(cq, 1, &cqe) returns 1
> >
> > ibv_ack_cq_events(cq, 1)
> >
> >
> > Will the comp. channel receive another event for the second CQE even
> > if it had arrived before ibv_req_notify_cq() was called?
>
> This is really an ill-posed question: according to the semantics
> defined by the verbs spec, the presence or absence of the second CQE
> is not defined until you poll the CQ again.
>
> In practice we can look at what real hardware does, and the answer is
> "it depends." Some adapters (eg mthca, mlx4) will generate an event
> immediately if ibv_req_notify_cq() is called for a CQ that contains an
> unpolled CQE, while other adapters (eg ipath, ehca) will only generate
> an event when a CQE is added after the cal to ibv_req_notify_cq().
>
cxgb3 behaves like ipath/ehca. IE arrival of a new CQE generates the
notification event.
> - R.
> _______________________________________________
> general mailing list
> general at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
>
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
More information about the general
mailing list