From patchwork Wed Dec 1 09:01:04 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Or Gerlitz X-Patchwork-Id: 370631 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id oB191AFB018126 for ; Wed, 1 Dec 2010 09:01:10 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753017Ab0LAJBJ (ORCPT ); Wed, 1 Dec 2010 04:01:09 -0500 Received: from fwil.voltaire.com ([193.47.165.2]:22313 "EHLO exil.voltaire.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751993Ab0LAJBI (ORCPT ); Wed, 1 Dec 2010 04:01:08 -0500 Received: from zuben.voltaire.com ([172.25.5.141]) by exil.voltaire.com with Microsoft SMTPSVC(6.0.3790.4675); Wed, 1 Dec 2010 11:01:05 +0200 Message-ID: <4CF60ED0.6000502@Voltaire.com> Date: Wed, 01 Dec 2010 11:01:04 +0200 From: Or Gerlitz User-Agent: Thunderbird 2.0.0.19 (X11/20081209) MIME-Version: 1.0 To: Jason Gunthorpe CC: Roland Dreier , Steve Wise , "Robert D. Russell" , linux-rdma Subject: Re: [PATCH] libibverbs/doc: clarify selective signaling (Re: using IBV_SEND_SIGNALED) References: <4CF3DDF0.2070907@opengridcomputing.com> <4CF3E5FA.6010308@opengridcomputing.com> <4CF4E65D.4070205@Voltaire.com> <20101130185744.GK16788@obsidianresearch.com> In-Reply-To: <20101130185744.GK16788@obsidianresearch.com> X-OriginalArrivalTime: 01 Dec 2010 09:01:05.0006 (UTC) FILETIME=[490D48E0:01CB9136] Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Wed, 01 Dec 2010 09:01:11 +0000 (UTC) Index: libibverbs/man/ibv_post_send.3 =================================================================== --- libibverbs.orig/man/ibv_post_send.3 +++ libibverbs/man/ibv_post_send.3 @@ -112,6 +112,15 @@ request is fully executed and a work com from the corresponding completion queue (CQ). However, if the IBV_SEND_INLINE flag was set, the buffer can be reused immediately after the call returns. +.PP +Applications which use selective signaling can only assume that +unsignaled WRs are complete once a completion for a later signaled WR +is received. In practice this means that a signaled WR must be +used periodically, and that the send queue should never be filled with +unsignaled WRs. Such periodic signaling is also a requirement of most rdma +devices. In the presence of completion with error, WCs are generated +also for unsignaled WRs, so applications should make sure to provide a valid +id (cookie) for all posted WRs. .SH "SEE ALSO" .BR ibv_create_qp (3), .BR ibv_create_ah (3),