On Wed, Aug 14, 2019 at 9:58 AM Nathan Chancellor <natechancellor@xxxxxxxxx> wrote: > > clang warns: > > net/netfilter/nft_bitwise.c:138:50: error: size argument in 'memcmp' > call is a comparison [-Werror,-Wmemsize-comparison] > if (memcmp(&priv->xor, &zero, sizeof(priv->xor) || > ~~~~~~~~~~~~~~~~~~^~ > net/netfilter/nft_bitwise.c:138:6: note: did you mean to compare the > result of 'memcmp' instead? > if (memcmp(&priv->xor, &zero, sizeof(priv->xor) || > ^ > ) > net/netfilter/nft_bitwise.c:138:32: note: explicitly cast the argument > to size_t to silence this warning > if (memcmp(&priv->xor, &zero, sizeof(priv->xor) || > ^ > (size_t)( > 1 error generated. > > Adjust the parentheses so that the result of the sizeof is used for the > size argument in memcmp, rather than the result of the comparison (which > would always be true because sizeof is a non-zero number). > > Fixes: bd8699e9e292 ("netfilter: nft_bitwise: add offload support") > Link: https://github.com/ClangBuiltLinux/linux/issues/638 > Reported-by: kbuild test robot <lkp@xxxxxxxxx> > Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx> oh no! thanks for the patch. Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> > --- > net/netfilter/nft_bitwise.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/net/netfilter/nft_bitwise.c b/net/netfilter/nft_bitwise.c > index 1f04ed5c518c..974300178fa9 100644 > --- a/net/netfilter/nft_bitwise.c > +++ b/net/netfilter/nft_bitwise.c > @@ -135,8 +135,8 @@ static int nft_bitwise_offload(struct nft_offload_ctx *ctx, > { > const struct nft_bitwise *priv = nft_expr_priv(expr); > > - if (memcmp(&priv->xor, &zero, sizeof(priv->xor) || > - priv->sreg != priv->dreg)) > + if (memcmp(&priv->xor, &zero, sizeof(priv->xor)) || > + priv->sreg != priv->dreg) > return -EOPNOTSUPP; > > memcpy(&ctx->regs[priv->dreg].mask, &priv->mask, sizeof(priv->mask)); > -- > 2.23.0.rc2 > -- Thanks, ~Nick Desaulniers