Date: Mon, 11 Jan 2010 19:52:40 +0000 (UTC) From: Kirk McKusick <mckusick@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sbin/fsck_ffs pass2.c Message-ID: <201001111953.o0BJr1K1012741@repoman.freebsd.org>
index | next in thread | raw e-mail
mckusick 2010-01-11 19:52:40 UTC
FreeBSD src repository
Modified files:
sbin/fsck_ffs pass2.c
Log:
SVN rev 202107 on 2010-01-11 19:52:40Z by mckusick
When renaming a directory it passes through several intermediate
states. First its new name will be created causing it to have two
names (from possibly different parents). Next, if it has different
parents, its value of ".." will be changed from pointing to the old
parent to pointing to the new parent. Concurrently, its old name
will be removed bringing it back into a consistent state. When fsck
encounters an extra name for a directory, it offers to remove the
"extraneous hard link"; when it finds that the names have been
changed but the update to ".." has not happened, it offers to rewrite
".." to point at the correct parent. Both of these changes were
considered unexpected so would cause fsck in preen mode or fsck in
background mode to fail with the need to run fsck manually to fix
these problems.
This update changes these errors to be expected so that in preen
mode fsck will simply fix these transitional errors. For now,
background fsck will note these errors, but will need additional
kernel support to fix them, so will simply ignore them rather than
fail. A future update will allow background fsck to fix these
problems.
Reported by: jeff
Revision Changes Path
1.28 +109 -21 src/sbin/fsck_ffs/pass2.c
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001111953.o0BJr1K1012741>
