Hi, > -----Original Message----- > From: Rahul Lakkireddy <rahul.lakkire...@chelsio.com> > Sent: Wednesday, March 18, 2020 3:48 PM > To: Ferruh Yigit <ferruh.yi...@intel.com> > Cc: Karra Satwik <kaara.sat...@chelsio.com>; dev@dpdk.org; Raslan > Darawsheh <rasl...@mellanox.com>; Xueming Zhang > <xuemingx.zh...@intel.com> > Subject: Re: [PATCH] net/cxgbe: fix build with clang 3.4.2 > > On Wednesday, March 03/18/20, 2020 at 12:52:36 +0000, Ferruh Yigit wrote: > > Build error: > > .../drivers/net/cxgbe/cxgbe_flow.c:315:2: > > error: implicit truncation from 'int' to bitfield changes value > > from -1 to 7 [-Werror,-Wbitfield-constant-conversion] > > CXGBE_FILL_FS(adap->pf, ~0, pf); > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > .../drivers/net/cxgbe/cxgbe_flow.c:25:2: > > note: expanded from macro 'CXGBE_FILL_FS' > > __CXGBE_FILL_FS(v, m, fs, elem, e) > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > .../drivers/net/cxgbe/cxgbe_flow.c:15:18: note: > > expanded from macro '__CXGBE_FILL_FS' > > (fs)->mask.elem = (__m); \ > > ^ ~~~~~ > > Commit in fixes line changes 'PF_BITWIDTH' to '3', which makes 'fs->pf' > > bitfield size '3', changing '~0' to '0x7' to prevent truncation in > > assignment. > > > > Fixes: dcd456abe46f ("net/cxgbe: support flow API for matching all packets > on PF") > > > > Reported-by: Raslan Darawsheh <rasl...@mellanox.com> > > Reported-by: Xueming Zhang <xuemingx.zh...@intel.com> > > Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com> > > I've tested CLANG compilation with 9.0.1 without this patch, > but couldn't hit the above mentioned error. > > # clang --version > clang version 9.0.1 (Fedora 9.0.1-2.fc31) > > However, after grabbing CLANG 3.4.2, I could see the error. > > # clang --version > clang version 3.4.2 (tags/RELEASE_34/dot2-final) > > This patch fixes it and the fix is correct too. > > Thanks for fixing it. > Working just fine for me as well, thanks for the update Tested-by: Raslan Darawsheh <rasl...@mellanox.com>
> Acked-by: Rahul Lakkireddy <rahul.lakkire...@chelsio.com> > > > --- > > Cc: kaara.sat...@chelsio.com > > --- > > drivers/net/cxgbe/cxgbe_flow.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/net/cxgbe/cxgbe_flow.c > b/drivers/net/cxgbe/cxgbe_flow.c > > index 13fd78aaf..a46515d3b 100644 > > --- a/drivers/net/cxgbe/cxgbe_flow.c > > +++ b/drivers/net/cxgbe/cxgbe_flow.c > > @@ -312,7 +312,7 @@ ch_rte_parsetype_pf(const void *dmask > __rte_unused, > > > > CXGBE_FILL_FS(1, 1, pfvf_vld); > > > > - CXGBE_FILL_FS(adap->pf, ~0, pf); > > + CXGBE_FILL_FS(adap->pf, 0x7, pf); > > return 0; > > } > > > > -- > > 2.25.1 > >