From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A507AA04FD; Wed, 8 Jun 2022 19:46:36 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8CF5040689; Wed, 8 Jun 2022 19:46:36 +0200 (CEST) Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by mails.dpdk.org (Postfix) with ESMTP id 9F1F840042 for ; Wed, 8 Jun 2022 19:46:35 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 586CD5C019B; Wed, 8 Jun 2022 13:46:35 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Wed, 08 Jun 2022 13:46:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:cc:content-transfer-encoding:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm2; t=1654710395; x= 1654796795; bh=UCT3q0h2XhztuR6YLsjqTypG69aJ50TRB6Y9VJ7WpVk=; b=H Uocr1avae64fbusr5epjPDHLpX+1mjzPc53wpjZOmrTy/tCPWe0yZVzgUevrNv3z G2MA49D6PWzjoLiS6FQGsFexyYQIB9og/R6LxfTmFhkb1WoQXY5ITf99Vnur4l9F +lb8irLHjDxq45zTcZaFpfXxDRPXa2/WCV8aH5HfSsu8APilIVG6LW51av8fgM15 Yr3uoc2gHsvwZ8IqX7bqam2yFJIap2HimXlMdMrgYZ3JjyqlDTDDoKmuYntK2MMR npz/2oNoc8WxCPaBMuAkZUJLTLIOYRY5If784+xS0HR17XdCYUqliCSYj5KFY9Af A07Qp4koGLypYKp5L7OaA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1654710395; x= 1654796795; bh=UCT3q0h2XhztuR6YLsjqTypG69aJ50TRB6Y9VJ7WpVk=; b=L MulbxdqqQB5CT81oit/5RpWgF5JfSWYYnAJogVxctUoKD+lJL5t8G+7fAWD+Lf8A 3Rv9jzhvM9tbNCAjGSvKfRm3YjbLp2Mkkgo6hyM92VBP3d1CeDfQzUVMKE3ye/wc Lzy0myHpFuRborEXyUWjjzSuyHEXoEAzaA78po7heQXOhUmL5lDhiHZPK274M0QO cPjtMNnTLsSj4/xBrZ/9TNgQ5uMZDC/EuBIWixvfQfvIRE3ULefUEv414lzb1CuB LqCVvJKCS2KqIV4GFijmlA5SQto97XMAkcvSeIeWqiqC0zLUhIRSJhzTpZSLmOFi BSoHNwm8Pom6yUwWwd6rg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedruddtjedgudduvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvfevufffkfgjfhgggfgtsehtufertddttddvnecuhfhrohhmpefvhhho mhgrshcuofhonhhjrghlohhnuceothhhohhmrghssehmohhnjhgrlhhonhdrnhgvtheqne cuggftrfgrthhtvghrnheptdejieeifeehtdffgfdvleetueeffeehueejgfeuteeftddt ieekgfekudehtdfgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepthhhohhmrghssehmohhnjhgrlhhonhdrnhgvth X-ME-Proxy: Feedback-ID: i47234305:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 8 Jun 2022 13:46:33 -0400 (EDT) From: Thomas Monjalon To: Andrew Rybchenko , Spike Du Cc: dev@dpdk.org, Xiaoyun Li , Aman Singh , Yuying Zhang , Ferruh Yigit , Ray Kinsella , dev@dpdk.org Subject: Re: [PATCH v6] ethdev: introduce available Rx descriptors threshold Date: Wed, 08 Jun 2022 19:46:32 +0200 Message-ID: <22668814.6Emhk5qWAg@thomas> In-Reply-To: <1914507.usQuhbGJ8B@thomas> References: <20220607125942.241379-1-spiked@nvidia.com> <20220608163528.1850326-1-andrew.rybchenko@oktetlabs.ru> <1914507.usQuhbGJ8B@thomas> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org 08/06/2022 19:22, Thomas Monjalon: > 08/06/2022 18:35, Andrew Rybchenko: > > From: Spike Du > > > > A new event RTE_ETH_EVENT_RX_AVAIL_THRESH should be generated by HW > > when number of available descriptors in Rx queue goes below the > > threshold. > > > > The threshold is defined as a percentage of an Rx queue size with valid > > values from 0 to 99 (inclusive). Zero (default) value disables it. > > > > There is no capability reporting for the feature. Application should > > simply try to set required threshold value and handle result. > > > > Add testpmd commands to control the threshold: > > set port rxq avail_thresh > > > > Signed-off-by: Spike Du > > Signed-off-by: Andrew Rybchenko > > --- > > v6: > > - try to make descriptor shorter and more useful > > - refine terminology to use "available descriptors threshold" > > everywhere (plural "descriptors") > > - fix ethdev API documenation > > - define negative return values > > - define rules to convert percentage to descriptors number > > in drivers > > - avoid extra checks in testpmd helper to allow ethdev API > > to do its job > > - minor fixes in testpmd variables naming > > - fix testpmd help to be human oriented > > - update testpmd users guide > > - add release notes > > What a (more than) review work, thanks a lot for this v6! > > Acked-by: Thomas Monjalon > > With a few minor arrangements, > applied, thanks. PS: some ABI exceptions have to be added as discussed in the thread: +; Ignore ethdev event enum update +; because new event cannot be received if not registered +[suppress_type] + type_kind = enum + changed_enumerators = RTE_ETH_EVENT_MAX + +; Ignore fields inserted in cacheline boundary of rte_eth_rxq_info +; because the struct size is unchanged +[suppress_type] + name = rte_eth_rxq_info + has_data_member_inserted_between = {offset_of(rx_buf_size), end}