I have no idea what your bug is, but as for this part:

 > 1.       Are there any race issues with ibv_get_cq_event? The example code
 > (ud_pingpong) seems to imply that the correct sequence is
 > 
 > Start:
 > 
 >             Call ibv_get_cq_event
 > 
 >             Call ibv_ack_cq_event               <- anywhere so long as it 
 > happens before destroy_cq
 > 
 >             Call ibv_req_notify_cq
 > 
 >             Call ibv_poll_cq                        <- just once not as 
 > usual until empty according to the example
 > 
 >             Goto start

this pingpong example is somewhat of a special case, since we know in
advance that no more than 1 send and 1 receive completion can ever be
outstanding, so a single ibv_poll_cq suffices.

(Although thinking about this now, there may be some theoretical races
that could case problems)

 - R.

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to