On Wed, Oct 19, 2011 at 10:13:56AM -0400, David Magda wrote:
> On Wed, October 19, 2011 08:15, Pawel Jakub Dawidek wrote:
> > Fsck can only fix known file system inconsistencies in file system
> > structures. Because there is no atomicity of operations in UFS and other
> > file systems it is possible that when you remove a file, your system can
> > crash between removing directory entry and freeing inode or blocks.
> > This is expected with UFS, that's why there is fsck to verify that no
> > such thing happend.
> Slightly OT, but this non-atomic delay between meta-data updates and
> writes to the disk is exploited by "soft updates" with FreeBSD's UFS:
> http://www.freebsd.org/doc/en/books/handbook/configtuning-disk.html#SOFT-UPDATES
> It may be of some interest to the file system geeks on the list.

Well, soft-updates thanks to careful ordering of operation allow to
mount file system even in inconsistent state and run fsck in background,
as the only inconsistencies are resource leaks - directory entry will
never point at unallocated inode and an inode will never point at
unallocated block, etc. This is still not atomic.

With recent versions of FreeBSD, soft-updates were extended to journal
those resource leaks, so background fsck is not needed anymore.

Pawel Jakub Dawidek                       http://www.wheelsystems.com
FreeBSD committer                         http://www.FreeBSD.org
Am I Evil? Yes, I Am!                     http://yomoli.com

Attachment: pgp1e542EIuks.pgp
Description: PGP signature

zfs-discuss mailing list

Reply via email to