|
|
Log in / Subscribe / Register

posix mqueue namespace (v11)

From:  "Serge E. Hallyn" <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
To:  Linux Containers <containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org>
Subject:  [RFC patch 0/2] posix mqueue namespace (v11)
Date:  Mon, 15 Dec 2008 17:37:47 -0600
Message-ID:  <20081215233747.GA27553@us.ibm.com>
Archive‑link:  Article

(Ok I don't know what the actual version number is - it's
high but 11 is probably safe)

Cedric and Nadia took several approaches to making posix
message queues per-namespace.  I ended up mamking some
deep changes so am not retaining their Signed-off-by:s
on this version, but this is definately very much based
on work by both of them.

Patch 2 hopefully explains my approach.  Briefly,

	1. sysv and posix ipc are both under CLONE_NEWIPC
	2. the mqueue sb is per-ipc-namespace

So to create a new ipc namespace, you would

	unshare(CLONE_NEWIPC|CLONE_NEWNS);
	umount /dev/mqueue
	mount -t mqueue mqueue /dev/mqueue

It's perfectly valid to do vfs operations on files
in another ipc_namespace's /dev/mqueue, but any use
of mq_open(3) and friends will act in your own ipc_ns.

thanks,
-serge


Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds