ext3: Remove i_mutex from ext3_sync_file()

ext3_sync_file() does not need i_mutex for anything so just drop it.

Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
Jan Kara 2011-07-28 17:47:10 +02:00
parent ab7e2dbf9b
commit 5a0143a4f0

View File

@ -61,13 +61,6 @@ int ext3_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
if (ret) if (ret)
goto out; goto out;
/*
* Taking the mutex here just to keep consistent with how fsync was
* called previously, however it looks like we don't need to take
* i_mutex at all.
*/
mutex_lock(&inode->i_mutex);
J_ASSERT(ext3_journal_current_handle() == NULL); J_ASSERT(ext3_journal_current_handle() == NULL);
/* /*
@ -85,7 +78,6 @@ int ext3_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
* safe in-journal, which is all fsync() needs to ensure. * safe in-journal, which is all fsync() needs to ensure.
*/ */
if (ext3_should_journal_data(inode)) { if (ext3_should_journal_data(inode)) {
mutex_unlock(&inode->i_mutex);
ret = ext3_force_commit(inode->i_sb); ret = ext3_force_commit(inode->i_sb);
goto out; goto out;
} }
@ -108,8 +100,6 @@ int ext3_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
*/ */
if (needs_barrier) if (needs_barrier)
blkdev_issue_flush(inode->i_sb->s_bdev, GFP_KERNEL, NULL); blkdev_issue_flush(inode->i_sb->s_bdev, GFP_KERNEL, NULL);
mutex_unlock(&inode->i_mutex);
out: out:
trace_ext3_sync_file_exit(inode, ret); trace_ext3_sync_file_exit(inode, ret);
return ret; return ret;