>       When booting into the hibernated kernel, I was greeted by the
> 
>               WARNING: / was not properly unmounted
> 
>       message instead of the expected @unhibernating at ... and I had to run
>       fsck_ffs manually because rc's fsck found unexpected inconsistencies
>       on my /usr partition. It went on to clear thousands of inodes because
>       they had an "UNKNOWN FILE TYPE". Only /usr was affected, all other
>       partitions were clean.
> 
>       After fsck was done, I let rc proceed and from a couple of error
>       messages, it was clear that /usr was not in great shape: for example,
>       vi recover complained about missing perl stuff and numerous manuals
>       were missing.  Thus, I booted into bsd.rd and installed the same
>       snapshot again.

Yes, this is entirely possible.

vfs and ffs have no way to request a perfect sync of a filesystem
which is still mounted.

There is only has code to do it for filesystems which are being unmounted.

Yes I know some people are going to point at functions now, but dig deep
enough and some tests and you'll come to the same conclusions.

All it takes is 1 block not making it to disk, and the rules are
broken.  Without any evidence, I also have become suspicious of the
buffer cache falling behind on performing a write.

Reply via email to