I have installed a new virtual machine (VirtualBox) with Arch on btrfs
(just a root fs and swap partition, no other partitions).
I suddenly noticed 10 checksum errors in the kernel log:
$ dmesg | grep csum
[ 736.283506] BTRFS warning (device sda1): csum failed ino 1704363 off
761856 csum 1145980813 expected csum 2566472073
[ 736.283605] BTRFS warning (device sda1): csum failed ino 1704363 off
1146880 csum 1961240434 expected csum 2566472073
[ 745.583064] BTRFS warning (device sda1): csum failed ino 1704346 off
393216 csum 4035064017 expected csum 2566472073
[ 752.324899] BTRFS warning (device sda1): csum failed ino 1705927 off
2125824 csum 3638986839 expected csum 2566472073
[ 752.333115] BTRFS warning (device sda1): csum failed ino 1705927 off
2588672 csum 176788087 expected csum 2566472073
[ 752.333303] BTRFS warning (device sda1): csum failed ino 1705927 off
3276800 csum 1891435134 expected csum 2566472073
[ 752.333397] BTRFS warning (device sda1): csum failed ino 1705927 off
3964928 csum 3304112727 expected csum 2566472073
[ 2761.889460] BTRFS warning (device sda1): csum failed ino 1705927 off
2125824 csum 3638986839 expected csum 2566472073
[ 9054.226022] BTRFS warning (device sda1): csum failed ino 1704363 off
761856 csum 1145980813 expected csum 2566472073
[ 9054.226106] BTRFS warning (device sda1): csum failed ino 1704363 off
1146880 csum 1961240434 expected csum 2566472073
This is a new vm, it hasn't crashed (which might have caused filesystem
corruption). The virtual disk is on a RAID storage on the host, which is
healthy. All corrupted files are Firefox data files:
$ dmesg | grep csum | grep -Eo 'csum failed ino [0-9]* ' | awk '{print
$4}' | xargs -I{} find -inum {}
./.mozilla/firefox/nfh217zw.default/cookies.sqlite
./.mozilla/firefox/nfh217zw.default/cookies.sqlite
./.mozilla/firefox/nfh217zw.default/webappsstore.sqlite
./.mozilla/firefox/nfh217zw.default/places.sqlite
./.mozilla/firefox/nfh217zw.default/places.sqlite
./.mozilla/firefox/nfh217zw.default/places.sqlite
./.mozilla/firefox/nfh217zw.default/places.sqlite
./.mozilla/firefox/nfh217zw.default/places.sqlite
./.mozilla/firefox/nfh217zw.default/cookies.sqlite
./.mozilla/firefox/nfh217zw.default/cookies.sqlite
How could this possibly happen?
And more importantly: Why doesn't the btrfs stat(u)s output tell me that
errors have occurred?
$ sudo btrfs dev stats /
[/dev/sda1].write_io_errs 0
[/dev/sda1].read_io_errs 0
[/dev/sda1].flush_io_errs 0
[/dev/sda1].corruption_errs 0
[/dev/sda1].generation_errs 0
If the filesystem health was monitored using btrfs dev stats (cronjob)
(like checking a zpool using zpool status), the admin would not have
been notified:
$ sudo btrfs dev stats / | grep -v 0 -c
0
Is my understanding of the stats command wrong, does "corruption_errs"
not mean corruption errors?
--
Philip
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html