On Fri, Jan 29, 2016 at 11:04 AM, John Smith <lenovomi@xxxxxxxxx> wrote: > Hi > > i built btrfs volume using 2x3tb brand new /tested for badblocks > drives. I copied into volume around 5Tb of data. > > I tried to read one file which is around 4GB and i got input / output error. > > Dmesg contains: > > [154159.040059] BTRFS warning (device sdd): csum failed ino 9995246 > off 4506214400 csum 383964635 expected csum 6478505 > > > Any idea what is it? Whats the reason that this happened? Can I recover? You haven't provided enough info to really answer the first two questions. That this is raid1 for metadata and you're getting a checksum error without a fixup says this is a problem with a data block not checksumming. Why? Need a complete dmesg to see what else was going on. Even that won't necessarily answer the question. Could be silent corruption anywhere in the chain, and may not be caused by the drives themselves. Could be a connector. Could be a controller. Could be RAM. Could be a bug (seems sorta unlikely at this point but we don't know what kernel or btrfs-progs version you're using). As far as I know you can't recover the affected file(s) conventionally, Btrfs won't hand over data it thinks id corrupt. You can use find <mountpoint> -inum <value> to find files with that inode number. Unmount the file system. Then use btrfs restore to get the file. The man page has more info including a wiki document on how to use restore. -- Chris Murphy -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
