On 08/23, Chao Yu wrote:
> On 2019/8/23 3:49, Jaegeuk Kim wrote:
> > On 08/21, Chao Yu wrote:
> >> Ping,
> >>
> >> On 2019/8/12 20:01, Chao Yu wrote:
> >>> Hi Jaegeuk,
> >>>
> >>> In por_fsstress testcase, fsck reports below inconsistent status, I found 
> >>> one
> >>> path can cause this case.
> >>>
> >>> [FIX] (fsck_chk_inode_blk:1002)  --> Symlink: recover 0x1425 with 
> >>> i_size=4096
> >>> [ASSERT] (fsck_chk_inode_blk:1030)  --> ino: 0x1425 chksum:0x6983d47, but
> >>> calculated one is: 0xdb284b35
> >>> [FIX] (fsck_chk_inode_blk:1036)  --> ino: 0x1425 recover, 
> >>> i_inode_checksum=
> >>> 0x6983d47 -> 0xdb284b35
> >>>
> >>> - f2fs_symlink
> >>>  - page_symlink failed -> f2fs_write_failed() will truncate size to zero
> >>>   - f2fs_unlink failed -> symlink inode w/o data will remain in fs
> >>>
> >>> Not sure, but one choice of fix is to treat symlink as fs meta like we 
> >>> did for
> >>> directory, so that checkpoint can take care of all data/node of symlink, 
> >>> any
> >>> thoughts?
> > 
> > Hmm, how's the possible to get very long path name requiring another data 
> > block?
> 
> It can with below script, which is actually existed case in fsstress.
> 
> #!/bin/bash
> 
> for (( i = 0; i < 4095; i++ )); do
>         if [ $((i % 255)) -eq 0 ]
>         then
>                 filename=$filename"/"
>         else
>                 filename=$filename"0"
>         fi
> done
> 
> ln -s $filename /f2fs_mount_point/symlink
> 
> > If it's fitted in inline_data, it's more easy to guarantee that, right?
> 
> If the length of symlink is 4095, not sure inline space is enough even we can
> compress symlink...

I meant real usecases larger than 3.5KB. There's no posix rule to guarantee
this. IOWs, it's known behavior across filesystems.

> 
> Thanks,
> 
> > 
> >>>
> >>>
> >>> _______________________________________________
> >>> Linux-f2fs-devel mailing list
> >>> Linux-f2fs-devel@lists.sourceforge.net
> >>> https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
> >>> .
> >>>
> > .
> > 


_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to