fix block device fallout from ->fsync() changes
blkdev_fsync() needs to write pages in pagecache... Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Родитель
cfe22345ad
Коммит
da5aa861be
|
@ -388,6 +388,10 @@ int blkdev_fsync(struct file *filp, loff_t start, loff_t end, int datasync)
|
|||
struct block_device *bdev = I_BDEV(bd_inode);
|
||||
int error;
|
||||
|
||||
error = filemap_write_and_wait_range(filp->f_mapping, start, end);
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
/*
|
||||
* There is no need to serialise calls to blkdev_issue_flush with
|
||||
* i_mutex and doing so causes performance issues with concurrent
|
||||
|
|
Загрузка…
Ссылка в новой задаче