Re: kjournald keeps reference to namespace

From: Eric W. Biederman
Date: Sat Feb 18 2006 - 21:33:00 EST


Björn Steinbrink <B.Steinbrink@xxxxxx> writes:

> On 2006.02.18 17:32:27 +0100, Björn Steinbrink wrote:
>> > In daemonize() a new thread gets cleaned up and 'merged' with init_task.
>> > The current fs_struct is handled there, but not the current namespace.
>> > The following patch adds the namespace part.
>> >
>> > Signed-off-by: Björn Steinbrink <B.Steinbrink@xxxxxx>
>> > ---
>>
>> Oops, forgot the increment the namespace usage count...
>
> Ok, this time with the get_namespace wrapper, thanks to Eric Biederman
> for pointing that out to me.

Acked-by: Eric Biederman <ebiederm@xxxxxxxxxxxx>

Note we can't ever count on using our parents namespace because
we already have called exit_fs(), which is the only way to the
namespace from a process.

> ---
>
>
> diff -NurpP --minimal linux-2.6.16-rc4/kernel/exit.c
> linux-2.6.16-rc4-ns/kernel/exit.c
> --- linux-2.6.16-rc4/kernel/exit.c 2006-02-18 13:59:59.000000000 +0100
> +++ linux-2.6.16-rc4-ns/kernel/exit.c 2006-02-18 17:57:21.000000000 +0100
> @@ -360,6 +360,9 @@ void daemonize(const char *name, ...)
> fs = init_task.fs;
> current->fs = fs;
> atomic_inc(&fs->count);
> + exit_namespace(current);
> + current->namespace = init_task.namespace;
> + get_namespace(current->namespace);
> exit_files(current);
> current->files = init_task.files;
> atomic_inc(&current->files->count);
-
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/