Filesystem full, but df says not.

Mark Millard markmi at dsl-only.net
Thu Dec 14 21:58:47 UTC 2017


On 2017-Dec-14, at 12:56 PM, Rodney W. Grimes <freebsd-rwg at pdx.rh.CN85.dnsmgr.net> wrote:

>>> On 2017-Dec-14, at 11:00 AM, bob prohaska <fbsd at www.zefox.net> wrote:
>>> 
>>> 
>>>> An rpi2 running -current reported errors during boot like this on the
>>>> serial console after a graceful reboot:
>>>> 
>>>> UFS /dev/ufs/rootfs (/) cylinder checksum failed: cg 0, cgp: 0x4c0a5f41 != bp: 0x38b82866
>>>> UFS /dev/ufs/rootfs (/) cylinder checksum failed: cg 3, cgp: 0x58e2c1f5 != bp: 0x903c297
>>>> UFS /dev/ufs/rootfs (/) cylinder checksum failed: cg 0, cgp: 0x4c0a5f41 != bp: 0x38b82866
>>> 
>>> Believe the above low-level messages.
>> 
>> And be aware that when a cg checksum fails that CG's freespace is no
>> longer avaliable to be used until the CG checksum has been corrected
>> by a fsck.
>> 
>> You are probably moving your file system accross the "has CG checksum"
>> and "does not have CG checksum" boundary and when you do that your
>> older kernel does not write the checksum and your newer kernel gets
>> upset about that.
>> 
>> 
>>>> /: write failed, filesystem is full
>>>> cp: /etc/motd: No space left on device
>> 
>> This error is correct, as the free space in your CG is not avaliable as
>> that CG has failed chksum. 

I see. Just not how I took the phrase "filesystem is full".
Now the file system can be full when df shows space available.
That will tend to seem odd to folks.

>>> 
>>> My guess:
>>> 
>>> Other places likely translate the more detailed error
>>> classification to more generic classifications that
>>> hopefully result in an appropriate handling of the issue
>>> but is otherwise not necessarily correct.
>> 
>> It is correct as stated, for the reasons I state.
>> 
>>> 
>>> In other words: do not believe the later related messages
>>> in all its detail.
>> 
>> Oh believe it!

Sorry for the misinterpretation.

>> .
>> Mounting late filesystems:.
>> Dec 14 10:08:56 www kernel: pid 1394 (cp), uid 0 inumber 53912 on /: filesystem full
>> 
>> Root is on the microSD card, /usr /var /tmp and swap are on usb flash.
>> 
>> Nevertheless, it reached multi-user and allowed me  to  ssh in and run df,
>> which reported
>> Filesystem             1K-blocks     Used    Avail Capacity  Mounted on
>> /dev/ufs/rootfs          1473116   479936   875332    35%    /
>> devfs                          1        1        0   100%    /dev
>> /dev/msdosfs/MSDOSBOOT     51140     7588    43552    15%    /boot/msdos
>> /dev/da0e               52221244 28697844 19345704    60%    /usr
>> /dev/da0d                3044988   517860  2283532    18%    /tmp
>> /dev/da0a                2031132   122868  1745776     7%    /var

The above sort of result becomes the odd thing
for people to understand the classification.

> This activity probably did not depend on the bad cylinder
> checksums.
> 
>> Still, any activity that wrote to disk repeated the filesystem full error.
>> 
>> This happened with three different kernels, dating Dec 12, 7 and Aug 26.
>> Running fsck -fy once in single user didn't seem to help, although it 
>> finished without obvious errors. Running fsck -fy repeatedly in single-user 
>> seems to have cleared the error, but it's a surprising development.
> 

===
Mark Millard
markmi at dsl-only.net



More information about the freebsd-arm mailing list