diff options
author | Jan Kara <jack@suse.cz> | 2012-06-12 16:20:35 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-07-31 09:40:38 +0400 |
commit | eb04c28288bb0098d0e75d81ba2a575239de71d8 (patch) | |
tree | 82912fd7c78be269560a8af7d8516918c279255b /fs/internal.h | |
parent | 5accdf82ba25cacefd6c1867f1704beb4d244cdd (diff) | |
download | linux-eb04c28288bb0098d0e75d81ba2a575239de71d8.tar.gz linux-eb04c28288bb0098d0e75d81ba2a575239de71d8.tar.bz2 linux-eb04c28288bb0098d0e75d81ba2a575239de71d8.zip |
fs: Add freezing handling to mnt_want_write() / mnt_drop_write()
Most of places where we want freeze protection coincides with the places where
we also have remount-ro protection. So make mnt_want_write() and
mnt_drop_write() (and their _file alternative) prevent freezing as well.
For the few cases that are really interested only in remount-ro protection
provide new function variants.
BugLink: https://bugs.launchpad.net/bugs/897421
Tested-by: Kamal Mostafa <kamal@canonical.com>
Tested-by: Peter M. Petrakis <peter.petrakis@canonical.com>
Tested-by: Dann Frazier <dann.frazier@canonical.com>
Tested-by: Massimo Morana <massimo.morana@canonical.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/internal.h')
-rw-r--r-- | fs/internal.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/internal.h b/fs/internal.h index a6fd56c68b11..371bcc4b1697 100644 --- a/fs/internal.h +++ b/fs/internal.h @@ -61,6 +61,10 @@ extern void __init mnt_init(void); extern struct lglock vfsmount_lock; +extern int __mnt_want_write(struct vfsmount *); +extern int __mnt_want_write_file(struct file *); +extern void __mnt_drop_write(struct vfsmount *); +extern void __mnt_drop_write_file(struct file *); /* * fs_struct.c |