Break fs/namespace.c so I remember the mount propogation bug that can introduce mount namespace loops.
Currently younger mount namespaces mounted into older mount namespaces are allowed.
Ugh.
unsharing a mount namespace as well as propogating a mount can cause
trouble.
Mount propogation is royal pain to think about and deal with. I
create mount namespaces so my mounts are different not so my set of
mounts is the same.
diff --git a/fs/namespace.c b/fs/namespace.c
index 50ca17d..c2c7fdf 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -1309,6 +1309,8 @@
struct proc_inode *ei;
struct mnt_namespace *mnt_ns;
+#warning FIXME mnt_ns_loop should be called when propogating mounts....
+#warning FIXME mnt_ns_loop should be called when unsharing mount namespaces...
if (!proc_ns_inode(inode))
return false;