From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 3E79B43B06;
	Thu, 15 Feb 2024 07:21:39 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id ECA2943392;
	Thu, 15 Feb 2024 07:21:38 +0100 (CET)
Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182])
 by mails.dpdk.org (Postfix) with ESMTP id AC6BE43386
 for <dev@dpdk.org>; Thu, 15 Feb 2024 07:21:36 +0100 (CET)
Received: by linux.microsoft.com (Postfix, from userid 1086)
 id F2879207F224; Wed, 14 Feb 2024 22:21:35 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com F2879207F224
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com;
 s=default; t=1707978096;
 bh=SNgRLDNMgMCGpP10ixxImbwtamkE0L1PdVfuOyO2Ppo=;
 h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
 b=C+rW7hRbKMqb4THIaH9TVEstRsjNa5KatR3YYBOMopr6PsZevesartZmyafbc+Ah2
 /duGLEZu+Dljo3GW6KJpXkfLsskdKt8DcCWWS4jqtuE7Ni2lgyS2Xz9anUAHPDhFZH
 llo4XILAg/8EndFcN7Nhs258rFoHsq15+kVv6ato=
From: Tyler Retzlaff <roretzla@linux.microsoft.com>
To: dev@dpdk.org
Cc: Ajit Khaparde <ajit.khaparde@broadcom.com>,
 Andrew Boyer <andrew.boyer@amd.com>,
 Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
 Bruce Richardson <bruce.richardson@intel.com>,
 Chenbo Xia <chenbox@nvidia.com>, Chengwen Feng <fengchengwen@huawei.com>,
 Dariusz Sosnowski <dsosnowski@nvidia.com>,
 David Christensen <drc@linux.vnet.ibm.com>,
 Hyong Youb Kim <hyonkim@cisco.com>, Jerin Jacob <jerinj@marvell.com>,
 Jie Hai <haijie1@huawei.com>, Jingjing Wu <jingjing.wu@intel.com>,
 John Daley <johndale@cisco.com>, Kevin Laatz <kevin.laatz@intel.com>,
 Kiran Kumar K <kirankumark@marvell.com>,
 Konstantin Ananyev <konstantin.v.ananyev@yandex.ru>,
 Maciej Czekaj <mczekaj@marvell.com>, Matan Azrad <matan@nvidia.com>,
 Maxime Coquelin <maxime.coquelin@redhat.com>,
 Nithin Dabilpuram <ndabilpuram@marvell.com>, Ori Kam <orika@nvidia.com>,
 Ruifeng Wang <ruifeng.wang@arm.com>, Satha Rao <skoteshwar@marvell.com>,
 Somnath Kotur <somnath.kotur@broadcom.com>,
 Suanming Mou <suanmingm@nvidia.com>, Sunil Kumar Kori <skori@marvell.com>,
 Viacheslav Ovsiienko <viacheslavo@nvidia.com>,
 Yisen Zhuang <yisen.zhuang@huawei.com>,
 Yuying Zhang <Yuying.Zhang@intel.com>, mb@smartsharesystems.com,
 Tyler Retzlaff <roretzla@linux.microsoft.com>
Subject: [PATCH v4 00/18] stop using zero sized marker fields
Date: Wed, 14 Feb 2024 22:21:02 -0800
Message-Id: <1707978080-28859-1-git-send-email-roretzla@linux.microsoft.com>
X-Mailer: git-send-email 1.8.3.1
In-Reply-To: <1706657173-26166-1-git-send-email-roretzla@linux.microsoft.com>
References: <1706657173-26166-1-git-send-email-roretzla@linux.microsoft.com>
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

The zero sized RTE_MARKER<n> typedefs are a GCC extension unsupported by
MSVC. This series adds new fields and allows deprecation of the old.

Introduce new anonymous union fields with mbuf_ prefix for cacheline0,
rearm_data, rx_descriptor_fields1, and cacheline1.

Remove in-tree use of the zero sized marker fields and adapt consuming
code to use the new anonymous union fields.

Question: what is the correct mechanism to allow uncommenting of
__rte_deprecated in __rte_marker when building DPDK itself but not
when building applications?

Tyler Retzlaff (18):
  mbuf: deprecate GCC marker in rte mbuf struct
  mbuf: stop using zero sized marker fields
  net/i40e: stop using zero sized marker fields
  net/iavf: stop using zero sized marker fields
  net/ice: stop using zero sized marker fields
  net/ixgbe: stop using zero sized marker fields
  net/mlx5: stop using zero sized marker fields
  net/sfc: stop using zero sized marker fields
  net/bnxt: stop using zero sized marker fields
  net/enic: stop using zero sized marker fields
  net/fm10k: stop using zero sized marker fields
  net/hns3: stop using zero sized marker fields
  net/ionic: stop using zero sized marker fields
  net/thunderx: stop using zero sized marker fields
  net/virtio: stop using zero sized marker fields
  net/cnxk: stop using zero sized marker fields
  common/idpf: stop using zero sized marker fields
  examples/dma: stop using zero sized marker fields

 doc/guides/rel_notes/deprecation.rst            |  20 ++
 drivers/common/idpf/idpf_common_rxtx.c          |   4 +-
 drivers/common/idpf/idpf_common_rxtx_avx512.c   |  60 ++--
 drivers/net/bnxt/bnxt_rxtx_vec_avx2.c           |  18 +-
 drivers/net/bnxt/bnxt_rxtx_vec_common.h         |   4 +-
 drivers/net/bnxt/bnxt_rxtx_vec_neon.c           |  20 +-
 drivers/net/bnxt/bnxt_rxtx_vec_sse.c            |  20 +-
 drivers/net/cnxk/cn10k_rx.h                     |  50 ++--
 drivers/net/cnxk/cn9k_rx.h                      |  34 +--
 drivers/net/cnxk/cnxk_ethdev.c                  |   4 +-
 drivers/net/enic/enic.h                         |   2 +-
 drivers/net/enic/enic_main.c                    |   4 +-
 drivers/net/enic/enic_rxtx_vec_avx2.c           |  22 +-
 drivers/net/fm10k/fm10k_rxtx_vec.c              |  24 +-
 drivers/net/hns3/hns3_rxtx_vec.c                |  22 +-
 drivers/net/hns3/hns3_rxtx_vec_neon.h           |  28 +-
 drivers/net/hns3/hns3_rxtx_vec_sve.c            |   6 +-
 drivers/net/i40e/i40e_rxtx_vec_altivec.c        |  14 +-
 drivers/net/i40e/i40e_rxtx_vec_avx2.c           |  30 +-
 drivers/net/i40e/i40e_rxtx_vec_avx512.c         |  32 +-
 drivers/net/i40e/i40e_rxtx_vec_common.h         |   4 +-
 drivers/net/i40e/i40e_rxtx_vec_neon.c           |  16 +-
 drivers/net/i40e/i40e_rxtx_vec_sse.c            |  34 +--
 drivers/net/iavf/iavf_rxtx_vec_avx2.c           |  60 ++--
 drivers/net/iavf/iavf_rxtx_vec_avx512.c         |  60 ++--
 drivers/net/iavf/iavf_rxtx_vec_common.h         |   4 +-
 drivers/net/iavf/iavf_rxtx_vec_neon.c           |  16 +-
 drivers/net/iavf/iavf_rxtx_vec_sse.c            |  68 ++---
 drivers/net/ice/ice_rxtx_vec_avx2.c             |  30 +-
 drivers/net/ice/ice_rxtx_vec_avx512.c           |  30 +-
 drivers/net/ice/ice_rxtx_vec_common.h           |   4 +-
 drivers/net/ice/ice_rxtx_vec_sse.c              |  34 +--
 drivers/net/ionic/ionic_lif.c                   |   8 +-
 drivers/net/ionic/ionic_rxtx_sg.c               |   4 +-
 drivers/net/ionic/ionic_rxtx_simple.c           |   2 +-
 drivers/net/ixgbe/ixgbe_rxtx_vec_common.h       |   4 +-
 drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c         |  12 +-
 drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c          |  42 +--
 drivers/net/mlx5/mlx5_rxq.c                     |   6 +-
 drivers/net/mlx5/mlx5_rxtx_vec.h                |  16 +-
 drivers/net/mlx5/mlx5_rxtx_vec_altivec.h        |  48 +--
 drivers/net/mlx5/mlx5_rxtx_vec_neon.h           |  42 +--
 drivers/net/mlx5/mlx5_rxtx_vec_sse.h            |  48 +--
 drivers/net/sfc/sfc_ef100_rx.c                  |  10 +-
 drivers/net/sfc/sfc_ef10_rx.c                   |  14 +-
 drivers/net/thunderx/nicvf_ethdev.c             |   4 +-
 drivers/net/thunderx/nicvf_rxtx.h               |   4 +-
 drivers/net/virtio/virtio_rxtx_packed.h         |   4 +-
 drivers/net/virtio/virtio_rxtx_packed_avx.h     |  14 +-
 drivers/net/virtio/virtio_rxtx_packed_neon.h    |  18 +-
 drivers/net/virtio/virtio_rxtx_simple.c         |   4 +-
 drivers/net/virtio/virtio_rxtx_simple.h         |   2 +-
 drivers/net/virtio/virtio_rxtx_simple_altivec.c |  16 +-
 drivers/net/virtio/virtio_rxtx_simple_neon.c    |  16 +-
 drivers/net/virtio/virtio_rxtx_simple_sse.c     |  16 +-
 examples/dma/dmafwd.c                           |   4 +-
 lib/eal/include/rte_common.h                    |   6 +
 lib/mbuf/rte_mbuf.h                             |   4 +-
 lib/mbuf/rte_mbuf_core.h                        | 375 +++++++++++++-----------
 59 files changed, 793 insertions(+), 728 deletions(-)

-- 
1.8.3.1