On Tue, Mar 5, 2024 at 6:37 PM Tyler Retzlaff
<roret...@linux.microsoft.com> wrote:
> > > diff --git a/lib/mbuf/rte_mbuf_core.h b/lib/mbuf/rte_mbuf_core.h
> > > index 5688683..917a811 100644
> > > --- a/lib/mbuf/rte_mbuf_core.h
> > > +++ b/lib/mbuf/rte_mbuf_core.h
> > > @@ -463,7 +463,7 @@ enum {
> > >  /**
> > >   * The generic rte_mbuf, containing a packet mbuf.
> > >   */
> > > -struct rte_mbuf {
> > > +struct __rte_cache_aligned rte_mbuf {
> > >         RTE_MARKER cacheline0;
> > >
> > >         void *buf_addr;           /**< Virtual address of segment buffer. 
> > > */
> > > @@ -476,7 +476,7 @@ struct rte_mbuf {
> > >          * same mbuf cacheline0 layout for 32-bit and 64-bit. This makes
> > >          * working on vector drivers easier.
> > >          */
> > > -       rte_iova_t buf_iova __rte_aligned(sizeof(rte_iova_t));
> > > +       alignas(sizeof(rte_iova_t)) rte_iova_t buf_iova;
> > >  #else
> > >         /**
> > >          * Next segment of scattered packet.
> > > @@ -662,7 +662,7 @@ struct rte_mbuf {
> > >         uint16_t timesync;
> > >
> > >         uint32_t dynfield1[9]; /**< Reserved for dynamic fields. */
> > > -} __rte_cache_aligned;
> > > +};
> >
> > I probably missed the discussion, but why is cacheline1 not handled in
> > this patch?
> > I was expecting a:
> > -       RTE_MARKER cacheline1 __rte_cache_min_aligned;
> > +       alignas(RTE_CACHE_LINE_MIN_SIZE) RTE_MARKER cacheline1;
>
> I should have replaced it I just missed it. Could I get you to fix it up?
> We have 2 options.
>
> 1. You can leave it as is, eventually the other series I have dealing
>    with the markers I will probably remove the cacheline1 marker anyway.
>
> 2. You could adjust it as you've identified above, just move alignas
>    before the field type and name.

I like consistency, let's go with option 2.

I'll adjust as I mentionned, no need for a v8.
I already tested it in my builds.

Thanks.

-- 
David Marchand

Reply via email to