On 03/22/2019 01:30 AM, Paolo Abeni wrote:
> The queue is marked not empty after acquiring the seqlock,
> and it's up to the NOLOCK qdisc clearing such flag on dequeue.
> Since the empty status lays on the same cache-line of the
> seqlock, it's always hot on cache during the updates.
>
>
> +static inline bool qdisc_is_empty(struct Qdisc *qdisc)
const struct Qdisc *qdisc
> +{
> + if (qdisc->flags & TCQ_F_NOLOCK)
> + return qdisc->empty;
> + return !qdisc->q.qlen;
> +}
> +
Other than that :
Reivewed-by: Eric Dumazet <[email protected]>