Getting some errors, fsck says drive is clean. `blk_update_request: critical medium error, dev sda`

dmesg paste:

I noticed some errors in my logs earlier. Look like hard drive errors to me, but maybe I’m seeing driver errors?

To fsck the drive I’ve been having to comment out the line in fstab and reboot the Pi. I can’t get it to umount otherwise, but I checked it earlier when I saw the errors (had to force the check, actually), and it was clean.

Looks like bad blocks or a faulty drive to me.

fsck not finding errors means that there are no structural problems in the file system metadata, that doesn’t preclude the possibility of a bad sector in the middle of a files contents.

All fsck is doing is checking consistency of the file system metadata, it doesn’t do a bad block scan. If the bad block was in the middle of some file system metadata fsck would complain but not if it is in the middle of the user data of a file because the actual user data contents of files are not read during a fsck scan.