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 6377443D0E; Wed, 27 Mar 2024 20:59:09 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4C76E402CE; Wed, 27 Mar 2024 20:59:09 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id 5527D402B2 for ; Wed, 27 Mar 2024 20:59:08 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1086) id 7DE8D208B336; Wed, 27 Mar 2024 12:59:07 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 7DE8D208B336 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1711569547; bh=U2GuchjUDSwhkjCcDiCqD8D12+ryETHY7FAAx5zHj7s=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=IKv4e0pzpXOK+87UMctnPUxmHwsRpvrY44dLeoIeFJvGz9pNAffjqW5RDqbbHbVZj 0aKwSioNHmtjI6hHDvuLKXsXnZPS54/F+rpH5qonZn0qPI/wm9Dyzjym+ILbmCp+xG gj851WV5Rd7vovc8Du8dzcvde8CXAqXDj7VUQobE= Date: Wed, 27 Mar 2024 12:59:07 -0700 From: Tyler Retzlaff To: Morten =?iso-8859-1?Q?Br=F8rup?= Cc: dev@dpdk.org, Akhil Goyal , Anoob Joseph , Ajit Khaparde , Andrew Boyer , Andrew Rybchenko , Bruce Richardson , Chenbo Xia , Chengwen Feng , Dariusz Sosnowski , David Christensen , Hyong Youb Kim , Jerin Jacob , Jie Hai , Jingjing Wu , John Daley , Kevin Laatz , Kiran Kumar K , Konstantin Ananyev , Maciej Czekaj , Matan Azrad , Maxime Coquelin , Nithin Dabilpuram , Ori Kam , Ruifeng Wang , Satha Rao , Somnath Kotur , Suanming Mou , Sunil Kumar Kori , Viacheslav Ovsiienko , Yisen Zhuang , Yuying Zhang Subject: Re: [PATCH v7 3/4] security: remove rte marker fields Message-ID: <20240327195907.GB20331@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <1706657173-26166-1-git-send-email-roretzla@linux.microsoft.com> <1710972098-2209-1-git-send-email-roretzla@linux.microsoft.com> <1710972098-2209-4-git-send-email-roretzla@linux.microsoft.com> <98CBD80474FA8B44BF855DF32C47DC35E9F333@smartserver.smartshare.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35E9F333@smartserver.smartshare.dk> User-Agent: Mutt/1.5.21 (2010-09-15) 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 On Tue, Mar 26, 2024 at 11:28:21AM +0100, Morten Brørup wrote: > > From: Tyler Retzlaff [mailto:roretzla@linux.microsoft.com] > > Sent: Wednesday, 20 March 2024 23.02 > > > > RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove > > RTE_MARKER fields from rte_mbuf struct. > > > > Maintain alignment of fields after removed cacheline1 marker by placing > > C11 alignas(RTE_CACHE_LINE_MIN_SIZE). > > > > Signed-off-by: Tyler Retzlaff > > --- > > doc/guides/rel_notes/release_24_03.rst | 3 +++ > > lib/security/rte_security_driver.h | 5 +++-- > > 2 files changed, 6 insertions(+), 2 deletions(-) > > > > diff --git a/doc/guides/rel_notes/release_24_03.rst > > b/doc/guides/rel_notes/release_24_03.rst > > index 4f18cca..75d40d4 100644 > > --- a/doc/guides/rel_notes/release_24_03.rst > > +++ b/doc/guides/rel_notes/release_24_03.rst > > @@ -219,6 +219,9 @@ Removed Items > > * mbuf: ``RTE_MARKER`` fields ``cacheline0`` and ``cacheline1`` > > have been removed from ``struct rte_mbuf``. > > > > +* security: ``RTE_MARKER`` fields ``cacheline0`` and ``cacheline1`` > > + have been removed from ``struct rte_security_session``. > > + > > API Changes > > ----------- > > > > diff --git a/lib/security/rte_security_driver.h > > b/lib/security/rte_security_driver.h > > index 09829ab..18a1e3c 100644 > > --- a/lib/security/rte_security_driver.h > > +++ b/lib/security/rte_security_driver.h > > @@ -12,6 +12,8 @@ > > * RTE Security Common Definitions > > */ > > > > +#include > > + > > #ifdef __cplusplus > > extern "C" { > > #endif > > @@ -24,7 +26,6 @@ > > * Security session to be used by library for internal usage > > */ > > struct rte_security_session { > > - RTE_MARKER cacheline0; > > uint64_t opaque_data; > > /**< Opaque user defined data */ > > uint64_t fast_mdata; > > @@ -32,7 +33,7 @@ struct rte_security_session { > > rte_iova_t driver_priv_data_iova; > > /**< session private data IOVA address */ > > > > - alignas(RTE_CACHE_LINE_MIN_SIZE) RTE_MARKER cacheline1; > > + alignas(RTE_CACHE_LINE_MIN_SIZE) > > uint8_t driver_priv_data[]; > > /**< Private session material, variable size (depends on driver) > > */ > > }; > > -- > > 1.8.3.1 > > No explicit alignment was ever specified for the struct rte_security_session itself. I wonder which implicit alignment applies to it. it falls back to standard C. it will be over aligned to the strictest alignment of any of the struct fields. so it will be aligned to alignas(RTE_CACHE_LINE_MIN_SIZE). > > Anyway, the changes are correct, so thanks! > Reviewed-by: Morten Brørup