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 A915345D3F; Tue, 19 Nov 2024 08:15:55 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9784640DCD; Tue, 19 Nov 2024 08:15:55 +0100 (CET) Received: from fhigh-b3-smtp.messagingengine.com (fhigh-b3-smtp.messagingengine.com [202.12.124.154]) by mails.dpdk.org (Postfix) with ESMTP id 49E03406B8 for ; Tue, 19 Nov 2024 08:15:54 +0100 (CET) Received: from phl-compute-05.internal (phl-compute-05.phl.internal [10.202.2.45]) by mailfhigh.stl.internal (Postfix) with ESMTP id 8428C2540122; Tue, 19 Nov 2024 02:15:53 -0500 (EST) Received: from phl-mailfrontend-02 ([10.202.2.163]) by phl-compute-05.internal (MEProxy); Tue, 19 Nov 2024 02:15:53 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1732000553; x=1732086953; bh=XjtXC2t8bmrXh5h/HZet8CN+WTEVND11pMUNSvZblkM=; b= cZ2cSZPNsB0gQ75ELgvGcIFxfP6mdJMxQKyZ3vqD1QUwzBEgVRHlRr7VZQwvhPor a2Cb7iGrrUlyot+LY5ofAZ4iIM1UhAZ5GV/bePpjZFFqCsuhnZyfG2QMAaidtZvn rGy6VC8aVUnv8lzx0iyB9FSHTMzRQdfwHW0AFlUrU48txmEX+b8kd4j+cgrWKxR8 8d647cvOUosEfTsj9XJlfUDjRsFwmypunJ8TAAELZAK47Uj40Ak7oA6lHXUFqkKw RtF8VM17QfAlZ25DM9c66vb/2VIYsV8/6SLz/OGN0KmD41PmIAewLVdqJVKWbR4+ dRhZtDFiXAW1O5ysZ9kP8A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1732000553; x= 1732086953; bh=XjtXC2t8bmrXh5h/HZet8CN+WTEVND11pMUNSvZblkM=; b=U hvnWMgccvmgnyxld6v2qS0FIAGF4lJk7C1m+j5sMzXmI1v8Mi9iPK2U53tib4HZm tkGC03+odQfFvgDIstudrfFKhVHyZpKZXd4+kNPkp/s3exT1kW23Esebv0uZV2u0 WoCv07+9f6wZg5oNbiPZRCetchP6SAmlnzkqkHdOeXF5aEo75EK//xSI2RM2yWeC yIxLolX42/NebIkJ8L+j45Y7eEPJaRQchUJMzNP+qN4BcoUXKvivUDB2s8VtglWt orctq2cCLyVbrPD3mYKsM733almj+PzKNnFNRrVo4+6PVFM5/Vgxvhoh7NBPb49v Bm0lWeIxYi683ThRQ7GIQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefuddrfedugddutdegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnh htshculddquddttddmnecujfgurhephffvvefufffkjghfggfgtgesthhqredttddtjeen ucfhrhhomhepvfhhohhmrghsucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrg hlohhnrdhnvghtqeenucggtffrrghtthgvrhhnpeegtddtleejjeegffekkeektdejvedt heevtdekiedvueeuvdeiuddvleevjeeujeenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepmhgrihhlfhhrohhmpehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtpdhn sggprhgtphhtthhopeegpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopehprhhopg hnihgtpgguphgukhesrhgvrghlthgvkhdrtghomhdprhgtphhtthhopehhohifrghruggp figrnhhgsehrvggrlhhsihhlrdgtohhmrdgtnhdprhgtphhtthhopeguvghvseguphgukh drohhrghdprhgtphhtthhopehfvghrrhhuhhdrhihighhithesrghmugdrtghomh X-ME-Proxy: Feedback-ID: i47234305:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 19 Nov 2024 02:15:51 -0500 (EST) From: Thomas Monjalon To: "pro_nic_dpdk@realtek.com" , =?UTF-8?B?546L6aKi?= Cc: "dev@dpdk.org" , Ferruh Yigit Subject: Re: =?UTF-8?B?562U5aSNOg==?= [PATCH v8 12/17] net/r8169: implement Tx path Date: Tue, 19 Nov 2024 08:15:49 +0100 Message-ID: <1768763.QkHrqEjB74@thomas> In-Reply-To: <6346d08bc2984c99bb0918397fec6962@realsil.com.cn> References: <20241113092854.91445-1-howard_wang@realsil.com.cn> <2706952.BddDVKsqQX@thomas> <6346d08bc2984c99bb0918397fec6962@realsil.com.cn> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" 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 The change below is replacing 1 rte_smp_rmb with 2 calls, so no it is not what I am asking for. Please could you check how to not calling this function at all? This series is already merged in the main branch, so any new change should be submitted as a new patch. Thank you 19/11/2024 07:29, =E7=8E=8B=E9=A2=A2: > Dear Thomas, >=20 > After our discussion, we concluded that we can make the following changes= =2E What do you think? Additionally, I may not have been very clear in my l= ast email. Should I submit the entire series of changes as PATCH v9, or sho= uld I respond with [PATCH v9 12/17] net/r8169: implement Tx path? >=20 > static u32 > rtl_get_opts1(struct rtl_tx_desc *txd) > { > - rte_smp_rmb(); >=20 > return rte_le_to_cpu_32(txd->opts1); > } >=20 > static void > rtl_tx_clean(struct rtl_hw *hw, struct rtl_tx_queue *txq) > { > ... > tx_left =3D (rte_atomic_load_explicit(&txq->tx_tail, > rte_memory_order_relaxed) % nb_tx_desc) - head; > } >=20 > + rte_smp_rmb(); >=20 > while (tx_left > 0) { > txd =3D &txq->hw_ring[head]; >=20 > if (!enable_tx_no_close && (rtl_get_opts1(txd) & DescOwn)) > break; > ... > } >=20 >=20 > int > rtl_tx_done_cleanup(void *tx_queue, uint32_t free_cnt) > { > ... > tx_left =3D (rte_atomic_load_explicit(&txq->tx_tail, > rte_memory_order_relaxed) % nb_tx_desc) - head; > } >=20 > + rte_smp_rmb(); >=20 > while (tx_left > 0) { > txd =3D &txq->hw_ring[head]; >=20 > status =3D rtl_get_opts1(txd); >=20 > if (!enable_tx_no_close && (status & DescOwn)) > break; >=20 > ... > } >=20 > Best Regards, > Howard Wang >=20 > -----=E9=82=AE=E4=BB=B6=E5=8E=9F=E4=BB=B6----- > =E5=8F=91=E4=BB=B6=E4=BA=BA: Thomas Monjalon =20 > =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2024=E5=B9=B411=E6=9C=8818=E6=97=A5= 22:59 > =E6=94=B6=E4=BB=B6=E4=BA=BA: pro_nic_dpdk@realtek.com; =E7=8E=8B=E9=A2=A2= > =E6=8A=84=E9=80=81: dev@dpdk.org; Ferruh Yigit > =E4=B8=BB=E9=A2=98: Re: [PATCH v8 12/17] net/r8169: implement Tx path >=20 >=20 > External mail. >=20 >=20 >=20 > Hello, >=20 > 13/11/2024 10:28, Howard Wang: > > +static u32 > > +rtl_get_opts1(struct rtl_tx_desc *txd) { > > + rte_smp_rmb(); > > + > > + return rte_le_to_cpu_32(txd->opts1); } >=20 > We should avoid using such heavy memory barrier. > Is it possible to use a lighter fence or atomic API? >=20 >=20 >=20