[ofa-general] ibv_get_cq_event blocking forever after successful ibv_post_send...

Dotan Barak dotanb at dev.mellanox.co.il
Sun May 27 22:25:25 PDT 2007


Jimmy Hill wrote:
> My code currently blocks (either a blocking call, or looping with a
> non-blocking FD) waiting for an event (ibv_get_cq_event) before attempting
> to dequeue (ibv_poll_cq) any entries from the CQ. I assumed that if I did
> not get a completion event, there would not be a CQ entry waiting. So, no, I
> have not tried that. I can try that, but it may be a week or more before I
> am able to get back to my machines.
>
> Can I not rely on getting an event when I request signalled completions?
>   
This is the tricky part in IB: when you ask for a completion event, this 
event will be produced for the NEXT completion
that will be produced after you asked for the event.

But the answer is yes: if you asked for a completion notification and a 
completion is being produced you will get an event.


I have a question: if you enable in all of the SRs (Send Requests) that 
you are posting the SIGNAL bit, why don't you just
enable the sq_sig_all when creating the QP?

Dotan



More information about the general mailing list