]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/namespace.h
Merge branch 'master'
[linux-2.6-omap-h63xx.git] / include / linux / namespace.h
index 697991b69f9b6d09e7d18f087490e66b018a78d1..3abc8e3b4879a5eac2dd54374f0fb9b37ca9f3a7 100644 (file)
@@ -9,15 +9,18 @@ struct namespace {
        atomic_t                count;
        struct vfsmount *       root;
        struct list_head        list;
-       struct rw_semaphore     sem;
+       wait_queue_head_t poll;
+       int event;
 };
 
 extern int copy_namespace(int, struct task_struct *);
 extern void __put_namespace(struct namespace *namespace);
+extern struct namespace *dup_namespace(struct task_struct *, struct fs_struct *);
 
 static inline void put_namespace(struct namespace *namespace)
 {
-       if (atomic_dec_and_test(&namespace->count))
+       if (atomic_dec_and_lock(&namespace->count, &vfsmount_lock))
+               /* releases vfsmount_lock */
                __put_namespace(namespace);
 }