[PATCH v2 2/3] net/sfc: fix non-constant expression inr RTE_BUILD_BUG_ON()
Stephen Hemminger
stephen at networkplumber.org
Tue Nov 14 01:00:49 CET 2023
On Mon, 13 Nov 2023 14:28:55 -0800
Tyler Retzlaff <roretzla at linux.microsoft.com> wrote:
> On Mon, Nov 13, 2023 at 02:13:26PM -0800, Stephen Hemminger wrote:
> > On Mon, 13 Nov 2023 09:06:04 -0800
> > Stephen Hemminger <stephen at networkplumber.org> wrote:
> >
> > > The macro RTE_MIN has some hidden assignments to provide type
> > > safety which means the statement can not be fully evaluted in
> > > first pass of compiler. Replace RTE_MIN() with equivalent macro.
> > >
> > > This will cause errors from checkpatch about multiple evaluations
> > > of same expression in macro but it is ok in this case.
> > >
> > > Fixes: 4f936666d790 ("net/sfc: support TSO for EF100 native datapath")
> > > Cc: ivan.malov at oktetlabs.ru
> > > Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
> >
> > Building with clang finds another issue.
> > ../drivers/net/sfc/sfc_rx.c:158:3: error: expected expression
> > RTE_BUILD_BUG_ON(RTE_MBUF_F_RX_IP_CKSUM_UNKNOWN != 0);
> > yet
> > lib/mbuf/rte_mbuf_core.h:#define RTE_MBUF_F_RX_IP_CKSUM_UNKNOWN 0
>
> curious. do you have the gcc -E / clang -E preprocessed output for the
> expansion? wonder what it looks like.
yet another one from clang.
../drivers/net/sfc/sfc_ef10_rx_ev.h:142:4: error: expected expression
RTE_BUILD_BUG_ON(ESE_FZ_L4_CLASS_TCP != ESE_DE_L4_CLASS_TCP);
drivers/common/sfc_efx/base/efx_regs_ef10.h:#define ESE_FZ_L4_CLASS_TCP 1
drivers/common/sfc_efx/base/efx_regs_ef10.h:#define ESE_DE_L4_CLASS_TCP 1
More information about the dev
mailing list