> +             packets = rte_counter64_fetch(&counters->packets);
> +             bytes = rte_counter64_fetch(&counters->bytes);
> +             errors = rte_counter64_fetch(&counters->errors);
> +
> +             rte_compiler_barrier();
> +
> +             stats->ipackets += packets;
> +             stats->ibytes += bytes;
> +             stats->ierrors += errors;
> +

there seems to be a dependency chain in the above loads and subsequent stores.
If that's the case what's the purpose of the compiler barrier?

--wathsala

Reply via email to