The proper handling of failed IO error?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

There is a recent (well a year ago) change in btrfs to remove the usage
of page/folio error, which gets me wondering what would happen if we got
a lot of write errors and high memory pressure?

Yes, all file systems calls mapping_set_error() so that fsync call would
return error, but I'm wondering what would happen to those folios that
failed to be written?

Those folios has their DIRTY flag cleared before submission, and and
their endio functions, the WRITEBACK flags is also cleared.

Meaning after such write failure, the page/folio has UPTODATE flag, and
no DIRTY/ERROR/WRITEBACK flags (at least for btrfs and ext4, meanwhile
iomap still set the ERROR flag).

Would any memory pressure just reclaim those pages/folios without them
really reaching the disk?

Thanks,
Qu





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux