Re: [-mm][PATCH 2/4] Enhance cgroup mm_owner_changed callback toadd task information

From: Andrew Morton
Date: Mon May 05 2008 - 18:16:27 EST


On Sun, 04 May 2008 03:08:04 +0530
Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:

>
>
> This patch adds an additional field to the mm_owner callbacks. This field
> is required to get to the mm that changed.
>
> Signed-off-by: Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx>
> ---
>
> include/linux/cgroup.h | 3 ++-
> kernel/cgroup.c | 2 +-
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff -puN kernel/cgroup.c~cgroup-add-task-to-mm--owner-callbacks kernel/cgroup.c
> --- linux-2.6.25/kernel/cgroup.c~cgroup-add-task-to-mm--owner-callbacks 2008-05-04 02:53:05.000000000 +0530
> +++ linux-2.6.25-balbir/kernel/cgroup.c 2008-05-04 02:53:05.000000000 +0530
> @@ -2772,7 +2772,7 @@ void cgroup_mm_owner_callbacks(struct ta
> if (oldcgrp == newcgrp)
> continue;
> if (ss->mm_owner_changed)
> - ss->mm_owner_changed(ss, oldcgrp, newcgrp);
> + ss->mm_owner_changed(ss, oldcgrp, newcgrp, new);
> }
> }
> }
> diff -puN include/linux/cgroup.h~cgroup-add-task-to-mm--owner-callbacks include/linux/cgroup.h
> --- linux-2.6.25/include/linux/cgroup.h~cgroup-add-task-to-mm--owner-callbacks 2008-05-04 02:53:05.000000000 +0530
> +++ linux-2.6.25-balbir/include/linux/cgroup.h 2008-05-04 02:53:05.000000000 +0530
> @@ -310,7 +310,8 @@ struct cgroup_subsys {
> */
> void (*mm_owner_changed)(struct cgroup_subsys *ss,
> struct cgroup *old,
> - struct cgroup *new);
> + struct cgroup *new,
> + struct task_struct *p);

If mm_owner_changed() had any documentation I'd suggest that it be updated.
Sneaky.

The existing comment:

/*
* This routine is called with the task_lock of mm->owner held
*/
void (*mm_owner_changed)(struct cgroup_subsys *ss,
struct cgroup *old,
struct cgroup *new);

Is rather mysterious. To what mm does it refer?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/