ext3: Check return value of blkdev_issue_flush()
blkdev_issue_flush() can fail. Make sure the error gets properly propagated. Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
Родитель
349ecd6a3c
Коммит
44f4f729e7
|
@ -92,8 +92,13 @@ int ext3_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
|
|||
* disk caches manually so that data really is on persistent
|
||||
* storage
|
||||
*/
|
||||
if (needs_barrier)
|
||||
blkdev_issue_flush(inode->i_sb->s_bdev, GFP_KERNEL, NULL);
|
||||
if (needs_barrier) {
|
||||
int err;
|
||||
|
||||
err = blkdev_issue_flush(inode->i_sb->s_bdev, GFP_KERNEL, NULL);
|
||||
if (!ret)
|
||||
ret = err;
|
||||
}
|
||||
out:
|
||||
trace_ext3_sync_file_exit(inode, ret);
|
||||
return ret;
|
||||
|
|
Загрузка…
Ссылка в новой задаче