[PATCH] FAT: use blkdev_issue_flush() instead of congestion_wait()

From: NeilBrown
Date: Tue Nov 16 2021 - 23:31:41 EST



congestion_wait() in this context is just a sleep - block devices do not
in general support congestion signalling any more.

The goal here is to wait for any recently written data to get to
storage. This can be achieved using blkdev_issue_flush().

Signed-off-by: NeilBrown <neilb@xxxxxxx>
---
fs/fat/file.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/fat/file.c b/fs/fat/file.c
index 13855ba49cd9..c50a52f40e37 100644
--- a/fs/fat/file.c
+++ b/fs/fat/file.c
@@ -175,9 +175,9 @@ long fat_generic_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
static int fat_file_release(struct inode *inode, struct file *filp)
{
if ((filp->f_mode & FMODE_WRITE) &&
- MSDOS_SB(inode->i_sb)->options.flush) {
+ MSDOS_SB(inode->i_sb)->options.flush) {
fat_flush_inodes(inode->i_sb, inode, NULL);
- congestion_wait(BLK_RW_ASYNC, HZ/10);
+ blkdev_issue_flush(inode->i_sb->s_bdev);
}
return 0;
}
--
2.33.1