background fsck, softupdates & inconsistent state on disk

Marc Olzheim marcolz at stack.nl
Thu Jul 21 09:45:38 GMT 2005


Hi.

Having enough opportunities to do crash recovery with kern/83375 open
and some of my services not yet moved back to FreeBSD 4, I noticed that
often it crashes just after (or perhaps during) mirroring of a directory
tree. The mirroring involves creating a directory with in it 80
subdirectories in it.

Now when the machine panics on a 'screen' again, background fsck fails
to properly check the filesystem and reports so in /var/log/messages.
What I see on that partition is the main directory that should have
contained the 80 subdirs, but now it has a link count of 0 and so
doesn't even contain a . or .. , let alone the 80 directories that
should have been there.

The only thing a manual fsck can do after that is unlink the
unreferenced inodes and clear up the mess...

Shouldn't this be impossible without power loss ? Or is it inherent to
SMP that the machine can crash on a process on CPU #0 while CPU #1 is
updating disk structures ?


Anyway, as soon as the migration of production services suffering from
kern/83375 back to 4.x is done I should have a 5.x test machine ready to
crash whenever people want, so I can get debug output out of it.

If anyone could tell me how to get it and what they need, I'd be happy
to provide it.

Marc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20050721/c1f5fb2c/attachment.bin


More information about the freebsd-stable mailing list