Re: [PATCH v2 2/2] x86/resctrl: Implement rename op for mon groups

From: Peter Newman
Date: Fri Dec 16 2022 - 10:13:03 EST


On Tue, Nov 29, 2022 at 1:02 PM Peter Newman <peternewman@xxxxxxxxxx> wrote:
> diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> index 03b51543c26d..d6562d98b816 100644
> --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> @@ -3230,6 +3230,71 @@ static int rdtgroup_rmdir(struct kernfs_node *kn)
> return ret;
> }
>
> +static void mongrp_move(struct rdtgroup *rdtgrp, struct rdtgroup *new_prdtgrp)
> +{
> + struct rdtgroup *prdtgrp = rdtgrp->mon.parent;
> + struct task_struct *p, *t;
> +
> + WARN_ON(list_empty(&prdtgrp->mon.crdtgrp_list));
> + list_del(&rdtgrp->mon.crdtgrp_list);
> +
> + list_add_tail(&rdtgrp->mon.crdtgrp_list,
> + &new_prdtgrp->mon.crdtgrp_list);
> + rdtgrp->mon.parent = new_prdtgrp;
> +
> + read_lock(&tasklist_lock);
> + for_each_process_thread(p, t) {
> + if (is_closid_match(t, prdtgrp) && is_rmid_match(t, rdtgrp))
> + WRITE_ONCE(t->closid, new_prdtgrp->closid);
> + }
> + read_unlock(&tasklist_lock);
> +
> + update_closid_rmid(cpu_online_mask, NULL);

I will need to refresh this patch now that we're back to building an
update mask.

This will once again depend on
https://lore.kernel.org/lkml/20221216133125.3159406-1-peternewman@xxxxxxxxxx/