diff options
Diffstat (limited to 'fs/sync.c')
-rw-r--r-- | fs/sync.c | 4 |
1 files changed, 0 insertions, 4 deletions
@@ -33,10 +33,8 @@ static int __sync_filesystem(struct super_block *sb, int wait) | |||
33 | else | 33 | else |
34 | sync_quota_sb(sb, -1); | 34 | sync_quota_sb(sb, -1); |
35 | sync_inodes_sb(sb, wait); | 35 | sync_inodes_sb(sb, wait); |
36 | lock_super(sb); | ||
37 | if (sb->s_dirt && sb->s_op->write_super) | 36 | if (sb->s_dirt && sb->s_op->write_super) |
38 | sb->s_op->write_super(sb); | 37 | sb->s_op->write_super(sb); |
39 | unlock_super(sb); | ||
40 | if (sb->s_op->sync_fs) | 38 | if (sb->s_op->sync_fs) |
41 | sb->s_op->sync_fs(sb, wait); | 39 | sb->s_op->sync_fs(sb, wait); |
42 | return __sync_blockdev(sb->s_bdev, wait); | 40 | return __sync_blockdev(sb->s_bdev, wait); |
@@ -164,10 +162,8 @@ int file_fsync(struct file *filp, struct dentry *dentry, int datasync) | |||
164 | 162 | ||
165 | /* sync the superblock to buffers */ | 163 | /* sync the superblock to buffers */ |
166 | sb = inode->i_sb; | 164 | sb = inode->i_sb; |
167 | lock_super(sb); | ||
168 | if (sb->s_dirt && sb->s_op->write_super) | 165 | if (sb->s_dirt && sb->s_op->write_super) |
169 | sb->s_op->write_super(sb); | 166 | sb->s_op->write_super(sb); |
170 | unlock_super(sb); | ||
171 | 167 | ||
172 | /* .. finally sync the buffers to disk */ | 168 | /* .. finally sync the buffers to disk */ |
173 | err = sync_blockdev(sb->s_bdev); | 169 | err = sync_blockdev(sb->s_bdev); |