Package: jdupes
Version: 1.7-2
Severity: minor
As currently implemented, jdupes(1) invokes FIDEDUPERANGE once
for each set of files found to be duplicates. However, per
documentation (say, [1]), there can be a filesystem-specific
limit in place on how large a data span can be handled in a
single call to FIDEDUPERANGE. Per strace(1) output, this limit
appears to indeed be 16 MiB for Btrfs on Debian Stretch.
An obvious solution is to get the maximum of the bytes_deduped
values returned by the call and invoke it again, advancing
src_offset and dest_offset values by that maximum, possibly
repeating these steps until the whole file length is covered.
AFAICT, this issue is not solved as of recent Git (a32de0db,
2017-06-07.)
[1] http://man7.org/linux/man-pages/man2/ioctl_fideduperange.2.html
--
FSF associate member #7257 58F8 0F47 53F5 2EB2 F6A5 8916 3013 B6A0 230E 334A