### Please describe the problem.
btrfs automatically validates checksums when data is read. If a checksum fails, instead of giving the corrupted file contents, the read will throw an I/O error. In result, it seems that git-annex fsck will not recognize the file as faulty, and will instead fail with a sha1sum parse error, without dropping the corresponding file as “bad”.

[[!format sh """
git annex fsck file
fsck file (checksum...)
sha1sum: .git/annex/objects/…: Input/output error
git-annex: sha1sum parse error
# End of transcript or log.
"""]]

### What version of git-annex are you using? On what operating system?
git-annex 5.20150508
linux 4.0.4

> [[fixed|done]]; IO errors are now detected and the file moved to bad/;
> the fsck also continues past that failure now, so if a disk has
> a lot of damanged files, it will find them all. --[[Joey]] 
