Re: [PATCH 1/3] ipc: sysvsem: implement sys_unshare(CLONE_SYSVSEM)

Eric W. Biederman
2008-04-17T10:04:45Z

"Serge E. Hallyn" <serue@us.ibm.com> writes:

> (patches 1 and 2 were originally by Manfred Spraul)
>
> sys_unshare(CLONE_NEWIPC) doesn't handle the undo lists properly, this can
> cause a kernel memory corruption. CLONE_NEWIPC must detach from the existing
> undo lists.
>
> Fix, part 1: add support for sys_unshare(CLONE_SYSVSEM)
>
> The original reason to not support it was the potential (inevitable?)
> confusion due to the fact that sys_unshare(CLONE_SYSVSEM) has the
> inverse meaning of clone(CLONE_SYSVSEM).
>
> Our two most reasonable options then appear to be (1) fully support
> CLONE_SYSVSEM, or (2) continue to refuse explicit CLONE_SYSVSEM,
> but always do it anyway on unshare(CLONE_SYSVSEM). This patch does
> (1).
>
> Changelog:
> Apr 16: SEH: switch to Manfred's alternative patch which
> removes the unshare_semundo() function which
> always refused CLONE_SYSVSEM.
>
> Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
> Signed-off-by: Serge E. Hallyn <serue@us.ibm.com>

These patches look like the fix the core issue.

Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>

Eric