diff options
author | Jan Kara <jack@suse.cz> | 2012-06-12 10:20:35 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-07-31 01:40:38 -0400 |
commit | eb04c28288bb0098d0e75d81ba2a575239de71d8 (patch) | |
tree | 82912fd7c78be269560a8af7d8516918c279255b /fs/internal.h | |
parent | 5accdf82ba25cacefd6c1867f1704beb4d244cdd (diff) |
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); | |||
61 | 61 | ||
62 | extern struct lglock vfsmount_lock; | 62 | extern struct lglock vfsmount_lock; |
63 | 63 | ||
64 | extern int __mnt_want_write(struct vfsmount *); | ||
65 | extern int __mnt_want_write_file(struct file *); | ||
66 | extern void __mnt_drop_write(struct vfsmount *); | ||
67 | extern void __mnt_drop_write_file(struct file *); | ||
64 | 68 | ||
65 | /* | 69 | /* |
66 | * fs_struct.c | 70 | * fs_struct.c |