projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ocfs2: fix journal commit deadlock
[firefly-linux-kernel-4.4.55.git]
/
fs
/
block_dev.c
diff --git
a/fs/block_dev.c
b/fs/block_dev.c
index 1d9c9f3754f860b2f9ca19a61d1e89d3eaa9c47c..b48c41bf0f86755200808c1b33a82ce6c8066d71 100644
(file)
--- a/
fs/block_dev.c
+++ b/
fs/block_dev.c
@@
-235,7
+235,10
@@
struct super_block *freeze_bdev(struct block_device *bdev)
sb = get_active_super(bdev);
if (!sb)
goto out;
sb = get_active_super(bdev);
if (!sb)
goto out;
- error = freeze_super(sb);
+ if (sb->s_op->freeze_super)
+ error = sb->s_op->freeze_super(sb);
+ else
+ error = freeze_super(sb);
if (error) {
deactivate_super(sb);
bdev->bd_fsfreeze_count--;
if (error) {
deactivate_super(sb);
bdev->bd_fsfreeze_count--;
@@
-272,7
+275,10
@@
int thaw_bdev(struct block_device *bdev, struct super_block *sb)
if (!sb)
goto out;
if (!sb)
goto out;
- error = thaw_super(sb);
+ if (sb->s_op->thaw_super)
+ error = sb->s_op->thaw_super(sb);
+ else
+ error = thaw_super(sb);
if (error) {
bdev->bd_fsfreeze_count++;
mutex_unlock(&bdev->bd_fsfreeze_mutex);
if (error) {
bdev->bd_fsfreeze_count++;
mutex_unlock(&bdev->bd_fsfreeze_mutex);