On Fri, Dec 13, 2024 at 12:15 PM Bruce Richardson <bruce.richard...@intel.com> wrote: > > On Fri, Dec 13, 2024 at 11:50:08AM +0100, David Marchand wrote: > > Those headers could not be included individually as they were not > > including their dependencies, or were subject to some build warnings. > > > > Fixes: 831dba47bd36 ("bus/vmbus: add Hyper-V virtual bus support") > > Fixes: 5b2a1a02dcaf ("crypto/cnxk: fix experimental version for PMD API") > > Fixes: e5abbeeeefa5 ("crypto/cnxk: add PMD API for getting CPTR") > > Fixes: 3ca607402c4d ("crypto/cnxk: add PMD API to flush CTX") > > Fixes: 8c3495f5d2dd ("net/dpaa: support loopback API") > > Fixes: 12b435bf8f2f ("net/iavf: support flex desc metadata extraction") > > Fixes: 23f627e0ed28 ("net/mlx5: add flow sync API") > > Fixes: f5177bdc8b76 ("net/mlx5: add GENEVE TLV options parser API") > > Fixes: 7cf197684589 ("raw/cnxk_bphy: support interrupt init and cleanup") > > Fixes: 633dae698070 ("raw/cnxk_gpio: add standard GPIO operations") > > Fixes: 53c71586c789 ("raw/dpaa2_cmdif: support enqueue/dequeue operations") > > Fixes: c39d1e082a4b ("raw/ntb: setup queues") > > > > Signed-off-by: David Marchand <david.march...@redhat.com> > > Generally LGTM, some queries inline below. > > /Bruce > > > --- > > drivers/bus/vmbus/rte_vmbus_reg.h | 6 ++++++ > > drivers/crypto/cnxk/rte_pmd_cnxk_crypto.h | 4 ++++ > > drivers/net/dpaa/rte_pmd_dpaa.h | 2 ++ > > drivers/net/iavf/rte_pmd_iavf.h | 6 ++++++ > > drivers/net/mlx5/rte_pmd_mlx5.h | 3 +++ > > drivers/raw/cnxk_bphy/rte_pmd_bphy.h | 16 ++++++++++++++++ > > drivers/raw/cnxk_gpio/rte_pmd_cnxk_gpio.h | 3 +++ > > drivers/raw/dpaa2_cmdif/rte_pmd_dpaa2_cmdif.h | 2 ++ > > drivers/raw/ntb/rte_pmd_ntb.h | 2 ++ > > 9 files changed, 44 insertions(+) > > > > diff --git a/drivers/bus/vmbus/rte_vmbus_reg.h > > b/drivers/bus/vmbus/rte_vmbus_reg.h > > index e3299aa871..95c8eb29b4 100644 > > --- a/drivers/bus/vmbus/rte_vmbus_reg.h > > +++ b/drivers/bus/vmbus/rte_vmbus_reg.h > > @@ -6,6 +6,12 @@ > > #ifndef _VMBUS_REG_H_ > > #define _VMBUS_REG_H_ > > > > +#include <stdint.h> > > + > > +#include <rte_common.h> > > +#include <rte_stdatomic.h> > > +#include <rte_uuid.h> > > + > > /* > > * Hyper-V SynIC message format. > > */ > > diff --git a/drivers/crypto/cnxk/rte_pmd_cnxk_crypto.h > > b/drivers/crypto/cnxk/rte_pmd_cnxk_crypto.h > > index 02278605a2..2bb0ff9e95 100644 > > --- a/drivers/crypto/cnxk/rte_pmd_cnxk_crypto.h > > +++ b/drivers/crypto/cnxk/rte_pmd_cnxk_crypto.h > > @@ -11,8 +11,12 @@ > > #ifndef _PMD_CNXK_CRYPTO_H_ > > #define _PMD_CNXK_CRYPTO_H_ > > > > +#include <stdbool.h> > > #include <stdint.h> > > > > +#include <rte_compat.h> > > +#include <rte_crypto.h> > > + > > /* Forward declarations */ > > > > /** > > diff --git a/drivers/net/dpaa/rte_pmd_dpaa.h > > b/drivers/net/dpaa/rte_pmd_dpaa.h > > index ec45633ba2..0a57e2097a 100644 > > --- a/drivers/net/dpaa/rte_pmd_dpaa.h > > +++ b/drivers/net/dpaa/rte_pmd_dpaa.h > > @@ -5,6 +5,8 @@ > > #ifndef _PMD_DPAA_H_ > > #define _PMD_DPAA_H_ > > > > +#include <stdint.h> > > + > > /** > > * @file rte_pmd_dpaa.h > > * > > diff --git a/drivers/net/iavf/rte_pmd_iavf.h > > b/drivers/net/iavf/rte_pmd_iavf.h > > index 56d453fc4c..04b86a5dd7 100644 > > --- a/drivers/net/iavf/rte_pmd_iavf.h > > +++ b/drivers/net/iavf/rte_pmd_iavf.h > > @@ -15,6 +15,7 @@ > > */ > > > > #include <stdio.h> > > + > > #include <rte_compat.h> > > #include <rte_mbuf.h> > > #include <rte_mbuf_dyn.h> > > @@ -184,6 +185,7 @@ __rte_experimental > > static inline void > > rte_pmd_ifd_dump_proto_xtr_metadata(struct rte_mbuf *m) > > { > > +#ifdef ALLOW_EXPERIMENTAL_API > > union rte_pmd_ifd_proto_xtr_metadata data; > > > > if (!rte_pmd_ifd_dynf_proto_xtr_metadata_avail()) > > @@ -243,6 +245,10 @@ rte_pmd_ifd_dump_proto_xtr_metadata(struct rte_mbuf *m) > > else if (m->ol_flags & RTE_IAVF_PKT_RX_DYNF_PROTO_XTR_IP_OFFSET) > > printf(" - Flexible descriptor's Extraction: ip_offset=%u", > > data.ip_ofs); > > +#else > > + RTE_SET_USED(m); > > + RTE_VERIFY(false); > > Is panicking the behaviour we want here? Seems rather severe, no?
You are not supposed to call this symbol without building with ALLOW_EXPERIMENTAL_API. Another option would be to mark those symbols as stable (they have been untouched for years). 12b435bf8f2 (Jeff Guo 2020-10-30 16:40:30 +0800 186) rte_pmd_ifd_dump_proto_xtr_metadata(struct rte_mbuf *m) > > > +#endif > > } > > > > #ifdef __cplusplus > > diff --git a/drivers/net/mlx5/rte_pmd_mlx5.h > > b/drivers/net/mlx5/rte_pmd_mlx5.h > > index fdd2f65888..f2c6aebe0b 100644 > > --- a/drivers/net/mlx5/rte_pmd_mlx5.h > > +++ b/drivers/net/mlx5/rte_pmd_mlx5.h > > @@ -5,6 +5,9 @@ > > #ifndef RTE_PMD_PRIVATE_MLX5_H_ > > #define RTE_PMD_PRIVATE_MLX5_H_ > > > > +#include <stdint.h> > > + > > +#include <rte_byteorder.h> > > #include <rte_compat.h> > > > > /** > > diff --git a/drivers/raw/cnxk_bphy/rte_pmd_bphy.h > > b/drivers/raw/cnxk_bphy/rte_pmd_bphy.h > > index f668e6ea82..c200c935ff 100644 > > --- a/drivers/raw/cnxk_bphy/rte_pmd_bphy.h > > +++ b/drivers/raw/cnxk_bphy/rte_pmd_bphy.h > > @@ -391,6 +391,7 @@ rte_pmd_bphy_intr_init(uint16_t dev_id) > > { > > struct cnxk_bphy_irq_msg msg = { > > .type = CNXK_BPHY_IRQ_MSG_TYPE_INIT, > > + .data = NULL, > > }; > > > > Why is this addition necessary? Is it for C++ compile? IIRC, this is because DPDK meson passes -Wno-missing-field-initializers globally, and the Makefile I wrote does not. I'll double check. -- David Marchand