[ofw] WinVerbs CQ events

Tzachi Dar tzachid at mellanox.co.il
Wed Mar 24 05:19:32 PDT 2010


If I understand correctly, you do receive both packets but only one CQ event.

This is by design.
In order for a CQ to create an event it should be both armed and also have a CQE that one has not polled.
In other words, once you ask for an event, you will only get one event until you ask for a new event again.
Once you receive an event their can be many CQE on the CQ.

In your test, both packets probably arrive "at the same time" on the receiver so you don't have the time to arm again. If you will change your sender to send 2 packets and wait for a second between them you will have a chance in the receiver to get one packet, ask_for_notification and get the second notification.

Thanks
Tzachi

> -----Original Message-----
> From: ofw-bounces at lists.openfabrics.org 
> [mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of prasanna
> Sent: Wednesday, March 24, 2010 1:36 PM
> To: ofw at openfabrics.org
> Subject: [ofw] WinVerbs CQ events
> 
> Hi All,
> 
> I observe a problem getting CQ events in WinVerbs 2.2 for the 
> following
> sequence:
> 
> 1. Client does a ibv_post_send() operation with a list of 2 
> WRs (The 'next' field of first struct ibv_send_wr points to 
> the second WR)
> 
> 2. Receive program calls ibv_post_recv() twice each with a single WR.
> 
> In the above sequence, I see data from both WRs is 
> transferred correctly from the client to the receiver.
> But the issue is, CQ event in the receiver is generated only 
> once. Also, in the receiver CQ event handler, ibv_poll_cq(cq, 
> 2, &wc[0]) returns 1.
> 
> I expect either 2 CQ events in the receive side or 
> ibv_poll_cq(..) should return 2 WCs.
> I tried both solicited & non-solicited CQ notification in the 
> recevier side. Also, the CQE is sufficiently large.
> 
> Please let me know if you have clue to generate CQ event in 
> the receiver in this sequence.
> 
> Thanks,
> Prasanna
> _______________________________________________
> ofw mailing list
> ofw at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
> 


More information about the ofw mailing list