Re: [PATCH] Bsdacct: stir up comments around acct_process.

From: Randy Dunlap
Date: Fri May 16 2008 - 11:49:31 EST


On Fri, 16 May 2008 14:54:59 +0400 Pavel Emelyanov wrote:

> Fix the one describing what this function is and add one
> more - about locking absence around pid namespaces loop.
>
> Signed-off-by: Pavel Emelyanov <xemul@xxxxxxxxxx>
>
> ---
>
> diff --git a/kernel/acct.c b/kernel/acct.c
> index 0feba97..d7b670c 100644
> --- a/kernel/acct.c
> +++ b/kernel/acct.c
> @@ -657,7 +657,8 @@ static void acct_process_in_ns(struct pid_namespace *ns)
> }
>
> /**
> - * acct_process - now just a wrapper around do_acct_process
> + * acct_process - now just a wrapper around acct_process_in_ns,
> + * which int turn is a wrapper around do_acct_process.

in

> *
> * handles process accounting for an exiting task
> */
> @@ -665,6 +666,11 @@ void acct_process(void)
> {
> struct pid_namespace *ns;
>
> + /*
> + * This loop is safe lockless, since current it still

is still

> + * alive and holds its namespace, which in turn holds
> + * its parent.
> + */
> for (ns = task_active_pid_ns(current); ns != NULL; ns = ns->parent)
> acct_process_in_ns(ns);
> }

---
~Randy
--
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/