lkml.org 
[lkml]   [2019]   [Aug]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2] staging: erofs: fix an error handling in erofs_readdir()
On Sun, Aug 18, 2019 at 09:56:31AM +0800, Gao Xiang wrote:
> @@ -82,8 +82,12 @@ static int erofs_readdir(struct file *f, struct dir_context *ctx)
> unsigned int nameoff, maxsize;
>
> dentry_page = read_mapping_page(mapping, i, NULL);
> - if (IS_ERR(dentry_page))
> - continue;
> + if (IS_ERR(dentry_page)) {
> + errln("fail to readdir of logical block %u of nid %llu",
> + i, EROFS_V(dir)->nid);
> + err = PTR_ERR(dentry_page);
> + break;

I don't think you want to use the errno that came back from
read_mapping_page() (which is, I think, always going to be -EIO).
Rather you want -EFSCORRUPTED, at least if I understand the recent
patches to ext2/ext4/f2fs/xfs/...

\
 
 \ /
  Last update: 2019-08-18 04:28    [W:0.038 / U:1.388 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site