[RFC PATCH] erofs-utils: fsck: support fragments
Xiang Gao
hsiangkao at linux.alibaba.com
Wed Jan 4 14:32:36 AEDT 2023
On 2023/1/4 11:24, Yue Hu wrote:
> Hi Xiang,
>
> On Wed, 4 Jan 2023 10:48:40 +0800
> Xiang Gao <hsiangkao at linux.alibaba.com> wrote:
>
>> Hi Yue,
>>
>> 在 2022/12/24 17:43, Yue Hu 写道:
>>> From: Yue Hu <huyue2 at coolpad.com>
>>>
>>> Add compressed fragments support for fsck.erofs.
>>>
>>> Signed-off-by: Yue Hu <huyue2 at coolpad.com>
>>> ---
>>> fsck/main.c | 41 +++++++++++++++++++++++++++++++++++++++--
>>> lib/zmap.c | 1 +
>>> 2 files changed, 40 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/fsck/main.c b/fsck/main.c
>>> index 2a9c501..9babc61 100644
>>> --- a/fsck/main.c
>>> +++ b/fsck/main.c
>>> @@ -421,6 +421,31 @@ static int erofs_verify_inode_data(struct erofs_inode *inode, int outfd)
>>> if (!(map.m_flags & EROFS_MAP_MAPPED) || !fsckcfg.check_decomp)
>>> continue;
>>>
>>> + if (map.m_flags & EROFS_MAP_FRAGMENT) {
>>> + struct erofs_inode packed_inode = {
>>> + .nid = sbi.packed_nid,
>>> + };
>>
>> Sorry for late response.
>>
>> a question... why don't we just rely on z_erofs_read_data()?
>
> We may fall back to uncompressed mode for packed inode due to 'ENOSPC'.
I think we could just export parts of erofs_pread() to clean up the
whole erofs_verify_inode_data()...
Thanks,
Gao Xiang
More information about the Linux-erofs
mailing list