RE: [PATCH v3] exfat: remove EXFAT_SB_DIRTY flag

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

 



> Thanks for thinking on this complicated issue.
> 
> 
> > Most of the NAND flash devices and HDDs have wear leveling and bad sector replacement algorithms
> applied.
> > So I think that the life of the boot sector will not be exhausted first.
> 
> I'm not too worried about the life of the boot-sector.
> I'm worried about write failures caused by external factors.
> (power failure/system down/vibration/etc. during writing) They rarely occur on SD cards, but occur on
> many HDDs, some SSDs and USB storages by 0.1% or more.
Hard disk and SSD do not guarantee atomic write of a sector unit?

> Especially with AFT-HDD, not only boot-sector but also the following multiple sectors become
> unreadable.
Other file systems will also be unstable on a such HW.

> It is not possible to completely solve this problem, as long as writing to the boot-sector.
> (I think it's a exFAT's specification defect) The only effective way to reduce this problem is to
> reduce writes to the boot-sector.
exFAT's specification defect... Well..
Even though the boot sector is corrupted, It can be recovered using the backup boot sector
through fsck.
> 
> 
> > Currently the volume dirty/clean policy of exfat-fs is not perfect,
> 
> Thank you for sharing the problem with you.
> 
> 
> > but I think it behaves similarly to the policy of MS Windows.
> 
> On Windows10, the dirty flag is cleared after more than 15 seconds after all write operations are
> completed.
> (dirty-flag is never updated during the write operation continues)
> 
> 
> > Therefore,
> > I think code improvements should be made to reduce volume flag records while maintaining the current
> policy.
> 
> Current policy is inconsistent.
> As I wrote last mail, the problem with the current implementation is that the dirty-flag may not be
> cleared after the write operation.(even if sync is enabled or disabled) Because, some write operations
> clear the dirty-flag but some don't clear.
> Unmount or sync command is the only way to ensure that the dirty-flag is cleared.
> This has no effect on clearing the dirty-flag after a write operations, it only increases risk of
> destroying the boot-sector.
>   - Clear the dirty-flag after every write operation.
>   - Never clear the dirty-flag after every write operation.
> Unless unified to either one,  I think that sync policy cannot be consistent.
> 
> How do you think?
> 
> 
> BR
> ---
> etsuhiro Kohada <kohada.t2@xxxxxxxxx>





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

  Powered by Linux