[PATCH v7 10/39] eventdev: use C11 alignas
Tyler Retzlaff
roretzla at linux.microsoft.com
Tue Mar 5 18:41:16 CET 2024
On Tue, Mar 05, 2024 at 04:47:05PM +0100, David Marchand wrote:
> On Mon, Mar 4, 2024 at 6:54 PM Tyler Retzlaff
> <roretzla at linux.microsoft.com> wrote:
> > diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h
> > index 3af4686..08e5f93 100644
> > --- a/lib/eventdev/rte_eventdev.h
> > +++ b/lib/eventdev/rte_eventdev.h
> > @@ -1338,7 +1338,7 @@ int rte_event_dev_stop_flush_callback_register(uint8_t dev_id,
> > /**
> > * Event vector structure.
> > */
> > -struct rte_event_vector {
> > +struct __rte_aligned(16) rte_event_vector {
> > uint16_t nb_elem;
> > /**< Number of elements valid in this event vector. */
> > uint16_t elem_offset : 12;
> > @@ -1376,23 +1376,19 @@ struct rte_event_vector {
> > * value to share between dequeue and enqueue operation.
> > * The application should not modify this field.
> > */
> > - union {
> > + union __rte_aligned(16) {
> > #endif
> > struct rte_mbuf *mbufs[0];
> > void *ptrs[0];
> > uint64_t u64s[0];
> > #ifndef __cplusplus
> > - } __rte_aligned(16);
> > + };
> > #endif
> > /**< Start of the vector array union. Depending upon the event type the
> > * vector array can be an array of mbufs or pointers or opaque u64
> > * values.
> > */
> > -#ifndef __DOXYGEN__
> > -} __rte_aligned(16);
> > -#else
> > };
> > -#endif
>
> This part was a strange construct.
> I see nothing wrong with the change (doxygen passes fine), but just a
> heads up to Jerin.
So there was another series merged recently that added this __DOXYGEN__
conditional I'm just removing it again.
Bruce pointed out that one of the benefits of moving __rte_aligned(16)
between struct <tag> doxygen no longer gets confused.
https://mails.dpdk.org/archives/dev/2024-March/289231.html
>
>
> --
> David Marchand
More information about the dev
mailing list