diff options
author | Christoph Hellwig <hch@lst.de> | 2009-08-03 17:28:06 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-09-24 07:47:39 -0400 |
commit | 4fadd7bb20a1e7c774ed88dc703d8fbcd00ff917 (patch) | |
tree | a6f3df6f19d27e81f35a93f8858b73bd4273f420 /include/linux/fs.h | |
parent | 1ba50bbe93ebb98e83b174a85eff76af430c4e5b (diff) |
freeze_bdev: kill bd_mount_sem
Now that we have the freeze count there is not much reason for bd_mount_sem
anymore. The actual freeze/thaw operations are serialized using the
bd_fsfreeze_mutex, and the only other place we take bd_mount_sem is
get_sb_bdev which tries to prevent mounting a filesystem while the block
device is frozen. Instead of add a check for bd_fsfreeze_count and
return -EBUSY if a filesystem is frozen. While that is a change in user
visible behaviour a failing mount is much better for this case rather
than having the mount process stuck uninterruptible for a long time.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r-- | include/linux/fs.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index cbb7724c11d3..72dfbd423974 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -640,7 +640,6 @@ struct block_device { | |||
640 | struct super_block * bd_super; | 640 | struct super_block * bd_super; |
641 | int bd_openers; | 641 | int bd_openers; |
642 | struct mutex bd_mutex; /* open/close mutex */ | 642 | struct mutex bd_mutex; /* open/close mutex */ |
643 | struct semaphore bd_mount_sem; | ||
644 | struct list_head bd_inodes; | 643 | struct list_head bd_inodes; |
645 | void * bd_holder; | 644 | void * bd_holder; |
646 | int bd_holders; | 645 | int bd_holders; |