Messages in this thread | | | From | Rob Landley <> | Subject | Re: /etc/mtab and per-process namespaces | Date | Mon, 31 Oct 2005 17:27:26 -0600 |
| |
On Monday 31 October 2005 13:11, Ram Pai wrote: > > The big thing I've never figured out how to do is make umount -a work in > > the presence of multiple namespaces. (Should it just umount what it > > sees? I don't know how to umount everything because I can't find > > everything...) > > Yes you won't find everything, since some of them are in a different > namespaces. Instead unmount whatever you see. Or use /proc/mounts > to unmount whatever is there in its namespace.
But /proc/mounts is a symlink to self/mounts, and self is a symlink to $PID, so after burrowing through the symlinks you wind up looking at /proc/$PID/mounts.
My concern is that if I have init, as root, try to perform a umount -a, it _still_ won't get the mounts belonging to child processes with a separate namespace. There's no "global view" of mounts available anywhere.
On the other hand, if we fork a child process with its own namespace, the child performs a private mount, and then we kill that child process, does that hidden mount get umounted cleanly via refcounting? (Or does it leak?)
If killing the processes umounts their private mounts, all init has to do is make sure all child processes are dead before doing a umount -a on what's left. (Then, of course, there's FUSE. Does killing the FUSE helper prevent the mount from being umounted?)
It's a bit conceptually persnickety, so far...
Rob - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |