On Tue, Oct 03, 2017 at 06:06:04PM +0300, Timofey Titovets wrote: > At now btrfs_dedupe_file_range() restricted to 16MiB range for > limit locking time and memory requirement for dedup ioctl() > > For too big input rage code silently set range to 16MiB > > Let's remove that restriction by do iterating over dedup range. > That's backward compatible and will not change anything for request > less then 16MiB.
This would make the ioctl more pleasant to use. So far I haven't found any problems to do the iteration. One possible speedup could be done to avoid the repeated allocations in btrfs_extent_same if we're going to iterate more than once. As this would mean the 16MiB length restriction is gone, this needs to bubble up to the documentation (http://man7.org/linux/man-pages/man2/ioctl_fideduperange.2.html) Have you tested the behaviour with larger ranges? -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html