Re: [PATCH 12/34] sched_ext: Implement BPF extensible scheduler class

From: Andrea Righi
Date: Tue Jul 11 2023 - 05:26:48 EST


On Mon, Jul 10, 2023 at 03:13:30PM -1000, Tejun Heo wrote:
...
> +static void free_dsq_irq_workfn(struct irq_work *irq_work)
> +{
> + struct llist_node *to_free = llist_del_all(&dsqs_to_free);
> + struct scx_dispatch_q *dsq, *tmp_dsq;
> +
> + llist_for_each_entry_safe(dsq, tmp_dsq, to_free, free_node)
> + kfree_rcu(dsq);

Maybe kfree_rcu(dsq, rcu)?

With 7e3f926bf453 ("rcu/kvfree: Eliminate k[v]free_rcu() single argument macro")
we don't allow single argument kfree_rcu() anymore and I don't think we
want to use kfree_rcu_mightsleep() here...

-Andrea