Jaegeuk,

I guess we need to drop this patch from dev-test, since xfstests may suffer hang
issue w/ it.

https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git/commit/?h=dev-test&id=fb7e51d19b3dc00bb8e3887399eb3e8f8aa1d078

Thanks,

On 4/25/25 10:29, Chao Yu wrote:
> On 4/24/25 00:15, Dmitry Antipov wrote:
>> In 'f2fs_write_end_io()', end all of the in-progress writes with
>> -EFSCORRUPTED if the corresponding error was detected earlier.
>>
>> Reported-by: [email protected]
>> Closes: https://syzkaller.appspot.com/bug?extid=803dd716c4310d16ff3a
>> Signed-off-by: Dmitry Antipov <[email protected]>
>> ---
>>  fs/f2fs/data.c | 7 +++++++
>>  1 file changed, 7 insertions(+)
>>
>> diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
>> index 54f89f0ee69b..755806868f0e 100644
>> --- a/fs/f2fs/data.c
>> +++ b/fs/f2fs/data.c
>> @@ -320,9 +320,11 @@ static void f2fs_write_end_io(struct bio *bio)
>>  {
>>      struct f2fs_sb_info *sbi;
>>      struct folio_iter fi;
>> +    bool check;
>>  
>>      iostat_update_and_unbind_ctx(bio);
>>      sbi = bio->bi_private;
>> +    check = is_sbi_flag_set(sbi, SBI_NEED_FSCK);
>>  
>>      if (time_to_inject(sbi, FAULT_WRITE_IO))
>>              bio->bi_status = BLK_STS_IOERR;
>> @@ -331,6 +333,11 @@ static void f2fs_write_end_io(struct bio *bio)
>>              struct folio *folio = fi.folio;
>>              enum count_type type;
>>  
>> +            if (check) {
>> +                    mapping_set_error(folio->mapping, -EFSCORRUPTED);
>> +                    continue;
> 
> Backing to the implementation, it seems it won't release resources
> below, e.g. missed to call:
> 
> - fscrypt_free_bounce_page()
> - f2fs_compress_write_end_io()
> ...
> - folio_end_writeback()
> 
> I guess it may hang kernel w/ this patch? Or any thing I missed?
> 
> Thanks,
> 
>> +            }
>> +
>>              if (fscrypt_is_bounce_folio(folio)) {
>>                      struct folio *io_folio = folio;
>>  
> 



_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to