I've a filesystem with daily snapshots that I send remotely using send/receive. After an unexpected reboot of the server, even if a complete fsck and scrub are perfectly ok, I'm unable to send new snapshots because btrfs send stops with this error: > ERROR: send ioctl failed with -524: Unknown error 524 the problem arise both sending a complete snapshot or using -p. I'm using btrfs progs version 4.12.
I forgot to add that the problem is in the "send" side, because it arises even if I send a snapshot to a file.
# uname -a Linux delta.lkj.it 4.12.0-0.bpo.1-amd64 #1 SMP Debian 4.12.6-1~bpo9+1 (2017-08-27) x86_64 GNU/Linux # btrfs --version btrfs-progs v4.12 # btrfs fi show Label: 'data' uuid: 8fa895ff-f225-4854-8025-569f570cb5b8 Total devices 1 FS bytes used 578.25GiB devid 1 size 1.12TiB used 1.04TiB path /dev/sda3 # btrfs fi df /mnt/data/ Data, single: total=1.01TiB, used=566.61GiB System, DUP: total=8.00MiB, used=128.00KiB Metadata, DUP: total=13.50GiB, used=11.64GiB GlobalReserve, single: total=512.00MiB, used=0.00B
I've compiled btrfs progs 4.13 from sources and I get the same error.
Errno 524 is ENOTSUPP, although that should be EOPNOTSUPP. This error appears when an unsupported type of inode is found, there should be a message in the log "unexpected inode type %o", please look it up and post back the number you see there. I'll send a fix for the error code and update the error message.
Looking to the code, I'm suspecting that's the type is of a block device, so the expected value is 060000.
I've since then found the problem: a zero-byte file with permissions ?--------- that I had to remove by myself. After having removed it I can now create and send snapshots again.
I can confirm that in the log there was this warning: > BTRFS warning (device sda3): unexpected inode type 0