>Previously, iomap_readpage_iter() returning 0 would break out of the loops of >iomap_readahead_iter(), which is what iomap_read_inline_data() relies on. > >However, commit d9dc477ff6a2 ("iomap: advance the iter directly on buffered >read") changes this behavior without calling iomap_iter_advance(), which >causes EROFS to get stuck in iomap_readpage_iter(). > >It seems iomap_iter_advance() cannot be called in >iomap_read_inline_data() because of the iomap_write_begin() path, so handle >this in iomap_readpage_iter() instead. > >Reported-by: Bo Liu <liub...@inspur.com> >Fixes: d9dc477ff6a2 ("iomap: advance the iter directly on buffered read") >Cc: Brian Foster <bfos...@redhat.com> >Cc: Christoph Hellwig <h...@lst.de> >Cc: "Darrick J. Wong" <djw...@kernel.org> >Cc: Christian Brauner <brau...@kernel.org> >Signed-off-by: Gao Xiang <hsiang...@linux.alibaba.com>
Tested-by: Bo Liu <liub...@inspur.com>
smime.p7s
Description: S/MIME cryptographic signature