diff options
Diffstat (limited to 'fs/namespace.c')
-rw-r--r-- | fs/namespace.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/fs/namespace.c b/fs/namespace.c index 0505fb61aa74..f48f98110c30 100644 --- a/fs/namespace.c +++ b/fs/namespace.c | |||
@@ -1061,10 +1061,11 @@ static int do_umount(struct vfsmount *mnt, int flags) | |||
1061 | * about for the moment. | 1061 | * about for the moment. |
1062 | */ | 1062 | */ |
1063 | 1063 | ||
1064 | lock_kernel(); | 1064 | if (flags & MNT_FORCE && sb->s_op->umount_begin) { |
1065 | if (sb->s_op->umount_begin) | 1065 | lock_kernel(); |
1066 | sb->s_op->umount_begin(mnt, flags); | 1066 | sb->s_op->umount_begin(sb); |
1067 | unlock_kernel(); | 1067 | unlock_kernel(); |
1068 | } | ||
1068 | 1069 | ||
1069 | /* | 1070 | /* |
1070 | * No sense to grab the lock for this test, but test itself looks | 1071 | * No sense to grab the lock for this test, but test itself looks |