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 BA403A0C48 for ; Thu, 8 Jul 2021 15:51:30 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id ADF1B4014F; Thu, 8 Jul 2021 15:51:30 +0200 (CEST) Received: from mail-io1-f41.google.com (mail-io1-f41.google.com [209.85.166.41]) by mails.dpdk.org (Postfix) with ESMTP id 6BBCE4014F for ; Thu, 8 Jul 2021 15:51:29 +0200 (CEST) Received: by mail-io1-f41.google.com with SMTP id a6so8295517ioe.0 for ; Thu, 08 Jul 2021 06:51:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Uqv/LLWEfDCypPgP6Qr6H5L45yw1BF5oXQe0XIAffLY=; b=PESrQPwwqh7Q94dbygML+DEQ1mwrIxIgcX43c562YmSvlldG+rNM6kW1LpW1kuWwgt 0CvR9WXERZbzm72fFaSnlwPZNkB/iU2S3V5QKIzxjSHqdEf9iX6BqrTp2Eoqi9/j3rt4 GsCrXUHMJ2QVCTrn74rg1miL9r4ihhLRkg8VM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Uqv/LLWEfDCypPgP6Qr6H5L45yw1BF5oXQe0XIAffLY=; b=cLTKF8h+odFPtKo/mEiWKxMm730DMq+UP1ZqzLuFew3T6gOOyp7AIyaF+lz2u/ZVXe apG9jVyu8I4li3Z9cBPi/B/5gza95yvPlN5tyYPZFNls3VcRI098RvuN0IliwXBAqCmW dmgXTFjjuHl+kJoj/cUA8x5Qsh4fInCj3GBv/tCBGe7S/Mv0yYJx1n0Xcp7MnoQ1c8lY iGQKbXfTOODfA8ciPXmQJbq7B9XVEFCUudCxa8gEPNVBkzwTSHJYTXpm44J75N0kMqP2 3rpoqzWWEM74nq6W42JGeGYFSiVlEPRBiwbPJv7nLpDhAB8Lyfl9Vp0UulD+ethSj1gu 6xcQ== X-Gm-Message-State: AOAM533KFyN5yBCas5ib1tRq/uHvCWIlvn2Lg43a+UCHCBEuT9OpCPrR RKe2/wb8nTFzSwqI+AgIJvgQXFHVEtzfnRcjwXLww7qwKUdB1g== X-Google-Smtp-Source: ABdhPJwDR86Fd613r94fKUlndCPtJsHCplGzgCmu1epaL4R8elyjRucYYM9jev9tKFTzoojTbqvTGdU8gGrjgO3LcL4= X-Received: by 2002:a6b:ec07:: with SMTP id c7mr5737403ioh.115.1625752288563; Thu, 08 Jul 2021 06:51:28 -0700 (PDT) MIME-Version: 1.0 References: <20210604073405.14880-1-joyce.kong@arm.com> <20210706065404.25137-1-joyce.kong@arm.com> <20210706065404.25137-3-joyce.kong@arm.com> <061d231c5ff848a19be50a62aed44087@intel.com> In-Reply-To: <061d231c5ff848a19be50a62aed44087@intel.com> From: Lance Richardson Date: Thu, 8 Jul 2021 09:51:17 -0400 Message-ID: To: "Zhang, Qi Z" Cc: Joyce Kong , "Xing, Beilei" , "ruifeng.wang@arm.com" , "honnappa.nagarahalli@arm.com" , "Richardson, Bruce" , "Zhang, Helin" , "dev@dpdk.org" , "stable@dpdk.org" , "nd@arm.com" Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000ad8e4705c69cf3c0" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [dpdk-stable] [dpdk-dev] [PATCH v3 2/2] net/i40e: replace SMP barrier with thread fence X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" --000000000000ad8e4705c69cf3c0 Content-Type: text/plain; charset="UTF-8" On Thu, Jul 8, 2021 at 8:09 AM Zhang, Qi Z wrote: > > > > > -----Original Message----- > > From: Joyce Kong > > Sent: Tuesday, July 6, 2021 2:54 PM > > To: Xing, Beilei ; Zhang, Qi Z ; > > ruifeng.wang@arm.com; honnappa.nagarahalli@arm.com; Richardson, Bruce > > ; Zhang, Helin > > Cc: dev@dpdk.org; stable@dpdk.org; nd@arm.com > > Subject: [PATCH v3 2/2] net/i40e: replace SMP barrier with thread fence > > > > Simply replace the SMP barrier with atomic thread fence for i40e hw ring sacn, > > if there is no synchronization point. > > > > Signed-off-by: Joyce Kong > > Reviewed-by: Ruifeng Wang > > --- > > drivers/net/i40e/i40e_rxtx.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index > > 9aaabfd92..86e2f083e 100644 > > --- a/drivers/net/i40e/i40e_rxtx.c > > +++ b/drivers/net/i40e/i40e_rxtx.c > > @@ -482,7 +482,8 @@ i40e_rx_scan_hw_ring(struct i40e_rx_queue *rxq) > > I40E_RXD_QW1_STATUS_SHIFT; > > } > > > > - rte_smp_rmb(); > > + /* This barrier is to order loads of different words in the descriptor */ > > + rte_atomic_thread_fence(__ATOMIC_ACQUIRE); > > Now for x86, you actually replace a compiler barrier with a memory fence, this may have potential performance impact which need additional resource to investigate No memory fence instruction is generated for __ATOMIC_ACQUIRE on x86 for any version of gcc or clang that I've tried, based on experiments here: https://godbolt.org/z/Yxr1vGhKP --000000000000ad8e4705c69cf3c0--