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 2C2D845E6F; Wed, 11 Dec 2024 03:06:01 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B3B85402E2; Wed, 11 Dec 2024 03:06:00 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id 9E0EC402DE for ; Wed, 11 Dec 2024 03:05:58 +0100 (CET) Received: by linux.microsoft.com (Postfix, from userid 1213) id B1FB9204722C; Tue, 10 Dec 2024 18:05:57 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com B1FB9204722C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1733882757; bh=XKyqiB7bAIRKyvu+L1FF8g4VRgX+AzqCtTiWzVPjigo=; h=From:To:Cc:Subject:Date:From; b=cA5ZmCTzzU/dLV0qnyNF0f/P3dsQrmspfzO33zs0Y9qX7OFoKRcIRYkg/84LVAxcq JCZ4VUKYA/wplkCZBR3xljKXO6bw92kJhyPBj865F7FlaiBvB4QNYN4M3jD37TtUnj ThcblokBGkiuxENtrQ0KnMEmz4hLQTkr+vLr3rs8= From: Andre Muezerie To: Cc: dev@dpdk.org, Andre Muezerie Subject: [PATCH 00/21] use portable variadic macros Date: Tue, 10 Dec 2024 18:05:30 -0800 Message-Id: <1733882751-29598-1-git-send-email-andremue@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 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 1) Use portable variadic macros Many places are using a GCC extension related to variadic macros, where a name prepends the ellipsis. This results in a warning like the one below when compiling the code with MSVC: app\test-pmd\testpmd.h(1314): error C2608: invalid token '...' in macro parameter list Variadic macros became a standard part of the C language with C99. GCC, Clang and MSVC handle them properly. The fix is to remove the prefix name (args... becomes ...) and use __VA_ARGS__. 2) Add "do { } while (0)" to macros used to remove logging calls, to ensure there's no code structure change when enabling/disabling logging. Andre Muezerie (21): app/test-acl: use portable variadic macros app/test-eventdev: use portable variadic macros app/test-mldev: use portable variadic macros app/test-pmd: use portable variadic macros drivers/baseband: ensure code structure does not change drivers/bus: use portable variadic macros drivers/common: use portable variadic macros drivers/compress: use portable variadic macros drivers/crypto: use portable variadic macros drivers/dma: use portable variadic macros drivers/event: use portable variadic macros drivers/mempool: use portable variadic macros drivers/net: use portable variadic macros drivers/raw: use portable variadic macros drivers/vdpa: use portable variadic macros lib/log: ensure code structure does not change lib/pipeline: ensure code structure does not change lib/port: ensure code structure does not change lib/power: ensure code structure does not change lib/rcu: ensure code structure does not change lib/vhost: ensure code structure does not change app/test-acl/main.c | 4 +- app/test-eventdev/evt_common.h | 12 ++-- app/test-mldev/ml_common.h | 7 ++- app/test-pmd/testpmd.h | 4 +- drivers/baseband/acc/acc100_pmd.h | 2 +- drivers/baseband/acc/vrb_pmd.h | 2 +- drivers/bus/cdx/cdx_logs.h | 12 ++-- drivers/bus/dpaa/include/fman.h | 4 +- drivers/bus/dpaa/rte_dpaa_logs.h | 18 +++--- drivers/bus/fslmc/fslmc_logs.h | 12 ++-- drivers/bus/fslmc/qbman/include/compat.h | 18 +++--- drivers/bus/ifpga/ifpga_logs.h | 16 ++--- drivers/bus/uacce/uacce.c | 8 +-- drivers/common/dpaax/compat.h | 16 ++--- drivers/common/dpaax/dpaax_logs.h | 18 +++--- drivers/common/idpf/base/idpf_osdep.h | 8 ++- drivers/compress/octeontx/otx_zip.h | 8 +-- drivers/compress/zlib/zlib_pmd_private.h | 12 ++-- drivers/crypto/caam_jr/caam_jr_log.h | 28 ++++----- drivers/crypto/ccp/ccp_pmd_private.h | 4 +- drivers/crypto/dpaa2_sec/dpaa2_sec_logs.h | 28 ++++----- drivers/crypto/dpaa_sec/dpaa_sec_log.h | 28 ++++----- drivers/crypto/virtio/virtio_logs.h | 60 +++++++++---------- drivers/dma/dpaa/dpaa_qdma_logs.h | 24 ++++---- drivers/dma/dpaa2/dpaa2_qdma_logs.h | 24 ++++---- drivers/dma/idxd/idxd_internal.h | 8 +-- drivers/dma/ioat/ioat_internal.h | 8 +-- drivers/event/dlb2/dlb2_log.h | 8 +-- drivers/event/dlb2/pf/base/dlb2_osdep.h | 12 ++-- drivers/event/dpaa/dpaa_eventdev.h | 16 ++--- drivers/event/dpaa2/dpaa2_eventdev_logs.h | 12 ++-- drivers/event/dsw/dsw_evdev.h | 8 +-- drivers/event/sw/sw_evdev_log.h | 12 ++-- drivers/mempool/dpaa/dpaa_mempool.h | 20 +++---- drivers/mempool/dpaa2/dpaa2_hw_mempool_logs.h | 30 +++++----- drivers/net/ark/ark_logs.h | 4 +- .../net/bnxt/hcapi/cfa_v3/include/cfa_trace.h | 12 ++-- drivers/net/bnxt/tf_core/cfa_tcam_mgr.h | 12 ++-- drivers/net/bnxt/tf_core/tfp.h | 8 +-- drivers/net/bnxt/tf_ulp/bnxt_tf_common.h | 4 +- drivers/net/dpaa/dpaa_ethdev.h | 16 ++--- drivers/net/dpaa/fmlib/fm_ext.h | 4 +- drivers/net/dpaa2/dpaa2_pmd_logs.h | 28 ++++----- drivers/net/e1000/base/e1000_osdep.h | 10 ++-- drivers/net/ena/base/ena_plat_dpdk.h | 16 ++--- drivers/net/enetc/enetc_logs.h | 32 +++++----- drivers/net/enetfec/enet_pmd_logs.h | 18 +++--- drivers/net/enic/enic_compat.h | 16 ++--- drivers/net/fm10k/base/fm10k_osdep.h | 10 ++-- drivers/net/hns3/hns3_logs.h | 20 +++---- drivers/net/ice/base/ice_osdep.h | 4 +- drivers/net/igc/base/igc_osdep.h | 10 ++-- drivers/net/ipn3ke/ipn3ke_logs.h | 16 ++--- drivers/net/ixgbe/base/ixgbe_osdep.h | 30 +++++----- drivers/net/ngbe/base/ngbe_osdep.h | 2 +- drivers/net/ngbe/ngbe_logs.h | 2 +- drivers/net/pfe/pfe_logs.h | 18 +++--- drivers/net/qede/qede_ethdev.h | 4 +- drivers/net/qede/qede_logs.h | 16 ++--- drivers/net/sfc/sfc_debug.h | 4 +- drivers/net/txgbe/base/txgbe_osdep.h | 2 +- drivers/net/txgbe/txgbe_logs.h | 2 +- drivers/raw/dpaa2_cmdif/dpaa2_cmdif_logs.h | 24 ++++---- drivers/raw/ifpga/base/opae_debug.h | 4 +- drivers/raw/ifpga/base/opae_osdep.h | 20 +++---- .../raw/ifpga/base/osdep_rte/osdep_generic.h | 4 +- drivers/raw/ifpga/ifpga_rawdev.h | 16 ++--- drivers/raw/skeleton/skeleton_rawdev.h | 16 ++--- drivers/raw/skeleton/skeleton_rawdev_test.c | 8 +-- drivers/vdpa/ifc/base/ifcvf_osdep.h | 4 +- lib/log/rte_log.h | 2 +- lib/pipeline/rte_swx_pipeline_internal.h | 2 +- lib/port/rte_swx_port_ethdev.c | 2 +- lib/port/rte_swx_port_fd.c | 2 +- lib/port/rte_swx_port_ring.c | 2 +- lib/port/rte_swx_port_source_sink.c | 2 +- lib/power/power_common.h | 2 +- lib/rcu/rte_rcu_qsbr.h | 2 +- lib/vhost/vhost_crypto.c | 2 +- 79 files changed, 474 insertions(+), 471 deletions(-) -- 2.47.0.vfs.0.3