Re: [RFC, PATCH] fix SEM_UNDO with namespaces

From: Pavel Emelyanov
Date: Mon Mar 31 2008 - 03:12:49 EST


Manfred Spraul wrote:
> Hi,
>
> the attached patch should fix the combination of CLONE_NEWIPC with
> shared sysv undo structures (the common case, just
> sys_unshare(CLONE_NEWIPC)):
> lookup_undo() now locates the undo array based on both semid and the
> namespace pointer.

If you start using any IPC object and then call unshare with CLONE_NEWIPC,
then it's your problem, but not the kernel. There are many issues that can
become broken from the user-level POV.

What's the problem with undo list? Does it become irrelevant and no undos
happen after the task dies?

I agree, that we should probably destroy this one when the task calls
unshare, but trying to keep this list relevant is useless.

> Additionally, the patch tries to clean the code up by using the linked
> list macros from <linux/list.h> instead of single linked lists.

May I ask you to split the patch into atomic parts, rather than
mixing fixes, reworks and cleanups together?

> The patch passes a few quick tests, I'm interested in feedback. Are
> there test apps for testing the IPC namespace code?

This code is a part of OpenVZ kernels, so it passes some internal
tests we perform.

> --
> Manfred
>

Thanks,
Pavel
--
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/