aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mount.h
diff options
context:
space:
mode:
authorDave Hansen <haveblue@us.ibm.com>2008-02-15 14:37:30 -0800
committerAl Viro <viro@zeniv.linux.org.uk>2008-04-19 00:25:32 -0400
commit8366025eb80dfa0d8d94b286d53027081c280ef1 (patch)
tree052c9244cd9d763ad8467bb95b25d903d58b7f11 /include/linux/mount.h
parenta70e65df8812c52252fa07a2eb92a46451a4427f (diff)
downloadkernel_samsung_espresso10-8366025eb80dfa0d8d94b286d53027081c280ef1.zip
kernel_samsung_espresso10-8366025eb80dfa0d8d94b286d53027081c280ef1.tar.gz
kernel_samsung_espresso10-8366025eb80dfa0d8d94b286d53027081c280ef1.tar.bz2
[PATCH] r/o bind mounts: stub functions
This patch adds two function mnt_want_write() and mnt_drop_write(). These are used like a lock pair around and fs operations that might cause a write to the filesystem. Before these can become useful, we must first cover each place in the VFS where writes are performed with a want/drop pair. When that is complete, we can actually introduce code that will safely check the counts before allowing r/w<->r/o transitions to occur. Acked-by: Serge Hallyn <serue@us.ibm.com> Acked-by: Al Viro <viro@ZenIV.linux.org.uk> Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/mount.h')
-rw-r--r--include/linux/mount.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/mount.h b/include/linux/mount.h
index 5ee2df2..2eecd2c 100644
--- a/include/linux/mount.h
+++ b/include/linux/mount.h
@@ -71,9 +71,12 @@ static inline struct vfsmount *mntget(struct vfsmount *mnt)
return mnt;
}
+extern int mnt_want_write(struct vfsmount *mnt);
+extern void mnt_drop_write(struct vfsmount *mnt);
extern void mntput_no_expire(struct vfsmount *mnt);
extern void mnt_pin(struct vfsmount *mnt);
extern void mnt_unpin(struct vfsmount *mnt);
+extern int __mnt_is_readonly(struct vfsmount *mnt);
static inline void mntput(struct vfsmount *mnt)
{