Re: [RFC PATCH v2 05/20] tracing/filters: Optimise cpumask vs cpumask filtering when user mask is a single CPU

From: Steven Rostedt
Date: Sat Jul 29 2023 - 15:34:50 EST


On Thu, 20 Jul 2023 17:30:41 +0100
Valentin Schneider <vschneid@xxxxxxxxxx> wrote:

> /* Move along */
> i++;
> +
> + /*
> + * Optimisation: if the user-provided mask has a weight of one
> + * then we can treat it as a scalar input.
> + */
> + single = cpumask_weight(pred->mask) == 1;
> + if (single && field->filter_type == FILTER_CPUMASK) {
> + pred->val = cpumask_first(pred->mask);
> + kfree(pred->mask);

Don't we need:
pred->mask = NULL;

here, or the free_predicate() will cause a double free?

-- Steve

> + }
> +