From: chenjie <
chenjie6@huawei.com>
when count=1,getdents(fd, dirp, count),
the yaffs_iterate not release the lock.
Signed-off-by: Chen Jie <
chenjie6@huawei.com>
---
yaffs_vfs_multi.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/yaffs_vfs_multi.c b/yaffs_vfs_multi.c
index fa7a9d1..f27c2d7 100644
--- a/yaffs_vfs_multi.c
+++ b/yaffs_vfs_multi.c
@@ -1740,8 +1740,10 @@ static int yaffs_iterate(struct file *f, struct dir_context *dc)
goto out;
}
- if (!dir_emit_dots(f, dc))
+ if (!dir_emit_dots(f, dc)){
+ yaffs_gross_unlock(dev);
return 0;
+ }
curoffs = 1;
--
1.8.0