Was attempting my first btrfs send receive over ssh and continually
received ioctl error at different points but always in the first 3
minutes. The volume consists of three devices with only metadata
duplication. I narrowed down the error to the send command by
recreating the error while redirecting to /dev/null. Sometime it would
happen after ~12Gib, or ~7.6Gib, right now rerunning multiple times it
has stopped on exactly 3.76 multiple times.
$ sudo btrfs send /mnt/dataroot.2017.10.21/ | pv -i5 > /dev/null
At subvol /mnt/dataroot.2017.10.21/
ERROR: send ioctl failed with -5: Input/output error ]
3.76GiB 0:00:13 [ 290MiB/s] [ <=> ]
First I checked the btrfs device stats, each of the 3 drives appear clean:
$ sudo btrfs device stats /mnt
[/dev/sdi].write_io_errs 0
[/dev/sdi].read_io_errs 0
[/dev/sdi].flush_io_errs 0
[/dev/sdi].corruption_errs 0
[/dev/sdi].generation_errs 0
[/dev/sdh].write_io_errs 0
[/dev/sdh].read_io_errs 0
[/dev/sdh].flush_io_errs 0
[/dev/sdh].corruption_errs 0
[/dev/sdh].generation_errs 0
[/dev/sdn].write_io_errs 0
[/dev/sdn].read_io_errs 0
[/dev/sdn].flush_io_errs 0
[/dev/sdn].corruption_errs 0
[/dev/sdn].generation_errs 0
The next thing I tried was running and checking that SMART short
selftest passed on each of three drives with no error.
$ sudo smartctl -l selftest /dev/sdh
# 1 Short offline Completed without error
I read somewhere to check dmesg, which yielded some info:
BTRFS warning (device sdn): csum failed ino 6407 off 7683907584 csum
1745651892 expected csum 3952841867
But when I when to see if scrub could detect the errors, nothing was found:
$ sudo btrfs scrub status -d /mnt
scrub status for 88406942-e3e1-42c6-ad71-e23bb315caa7
scrub device /dev/sdi (id 1) history
scrub started at Sun Oct 22 14:43:20 2017 and finished after 01:57:00
total bytes scrubbed: 677.69GiB with 0 errors
scrub device /dev/sdh (id 2) history
scrub started at Sun Oct 22 14:43:20 2017 and finished after 01:56:38
total bytes scrubbed: 677.44GiB with 0 errors
scrub device /dev/sdn (id 3) history
scrub started at Sun Oct 22 14:43:20 2017 and finished after 01:56:38
total bytes scrubbed: 677.36GiB with 0 errors
After all that scrubbing I still receive the ioctl error.
Does anyone have any ideas of what to try next? Right now I am running
the SMART 'long' self test.
--
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