[Virtio-fs] [PATCH 9/9] fuse: fix deadlock in __fuse_file_fallocate()
Liu Bo
bo.liu at linux.alibaba.com
Tue Apr 16 18:03:22 UTC 2019
From: Xiaoguang Wang <xiaoguang.wang at linux.alibaba.com>
This bug is obvious, fix it.
Reviewed-by: Joseph Qi <joseph.qi at linux.alibaba.com>
Signed-off-by: Xiaoguang Wang <xiaoguang.wang at linux.alibaba.com>
---
fs/fuse/file.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index 6ab23d7..0236783 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -3623,7 +3623,7 @@ static long __fuse_file_fallocate(struct file *file, int mode,
if (mode & FALLOC_FL_PUNCH_HOLE) {
down_write(&fi->i_mmap_sem);
truncate_pagecache_range(inode, offset, offset + length - 1);
- down_write(&fi->i_mmap_sem);
+ up_write(&fi->i_mmap_sem);
}
fuse_invalidate_attr(inode);
--
1.8.3.1
More information about the Virtio-fs
mailing list