09/11/2020 15:08, Jerin Jacob: > On Mon, Nov 9, 2020 at 7:32 PM Thomas Monjalon <tho...@monjalon.net> wrote: > > 09/11/2020 14:35, Jerin Jacob: > > > Are you facing the issue with 32bit? Could you share the steps to > > > reproduce and gcc version? > > > > Oh you're right, the issue was with 32-bit build, > > Thanks > > > sorry for the confusion. > > > > > > --- a/drivers/net/octeontx2/otx2_ethdev.c > > > +++ b/drivers/net/octeontx2/otx2_ethdev.c > > > @@ -749,7 +749,7 @@ nix_tx_offload_flags(struct rte_eth_dev *eth_dev) > > > RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, pkt_len) != > > > offsetof(struct rte_mbuf, ol_flags) + 12); > > > RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, tx_offload) != > > > - offsetof(struct rte_mbuf, pool) + 2 * > > > sizeof(void *)); > > > + offsetof(struct rte_mbuf, pool) + 2 * > > > sizeof(uint64_t)); > > > > The actual "fix" is > > offsetof(struct rte_mbuf, pool) + sizeof(uint64_t) + sizeof(void *) > > > > I don't understand the octeontx2 vector code. > > Please check what is the impact of this offset change. > > Tested the changes, No issue seen. All the expectation of vector code > is expressed with RTE_BUILD_BUG_ON. > > > BTW, is 32-bit build really supported with octeontx2? > > No. I think, keeping assert as "sizeof(void *)"(Same as now) and remove build > support for 32bit works too for octeontx2.
OK, I think it's better than tweaking RTE_BUILD_BUG_ON for something not really supported. > We will add it when really required. Then I'm going to send a patch to disable octeontx2 drivers on 32-bit. Note there is another build issue with octeontx2 drivers on CentOS/RHEL 7 with Arm GGC 4.8.