try a saner locking for pde_opener...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
diff --git a/fs/proc/internal.h b/fs/proc/internal.h
index e2fa934..46a7e2a 100644
--- a/fs/proc/internal.h
+++ b/fs/proc/internal.h
@@ -153,8 +153,8 @@
 struct pde_opener {
 	struct file *file;
 	struct list_head lh;
-	int count;	/* number of threads in close_pdeo() */
-	struct mutex mutex;
+	int closing;
+	struct completion *c;
 };
 
 ssize_t __proc_file_read(struct file *, char __user *, size_t, loff_t *);