> From: Stephen Hemminger [mailto:step...@networkplumber.org]
> Sent: Wednesday, 1 June 2022 00.46
> 
> On Mon, 23 May 2022 16:23:46 +0200
> Mattias Rönnblom <mattias.ronnb...@ericsson.com> wrote:
> 
> > +/**
> > + * The RTE seqcount type.
> > + */
> > +typedef struct {
> > +   uint32_t sn; /**< A sequence number for the protected data. */
> > +} rte_seqcount_t;
> 
> Don't need structure for only one element.
> 
> typedef uint32_t rte_seqcount_t;

Agree. The rte_seqcount_t type is not going to evolve in any way, so it should 
be safe not wrapping it into a structure.

> +     if (unlikely(begin_sn != end_sn))
> +             return true;
> +
> +     return false;
> 
> Prefer to avoid conditional if possible (compiler will optimize it as):
> 
>         return begin_sn == end_sn;

Typo: return begin_sn != end_sn;

Please keep the unlikely() hint, which could also be added to Stephen's variant.

Considering the comments in the source code related to this comparison, 
Mattias' version seems more readable. And I suppose the compiler is able to 
generate optimized code for both.

Reply via email to