public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/3] Btrfs: btrfs_dedupe_file_range() ioctl, remove 16MiB restriction
@ 2018-05-02  5:15 Timofey Titovets
  2018-05-02  5:15 ` [PATCH V3 1/3] Btrfs: split btrfs_extent_same() for simplification Timofey Titovets
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Timofey Titovets @ 2018-05-02  5:15 UTC (permalink / raw)
  To: linux-btrfs; +Cc: Timofey Titovets

At now btrfs_dedupe_file_range() restricted to 16MiB range for
limit locking time and memory requirement for dedup ioctl()

For too big input range 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.

Changes:
  v1 -> v2:
    - Refactor btrfs_cmp_data_prepare and btrfs_extent_same
    - Store memory of pages array between iterations
    - Lock inodes once, not on each iteration
    - Small inplace cleanups
  v2 -> v3:
    - Split to several patches

Timofey Titovets (3):
  Btrfs: split btrfs_extent_same() for simplification
  Btrfs: btrfs_dedupe_file_range() ioctl, remove 16MiB restriction
  Btrfs: btrfs_extent_same() reuse cmp workspace

 fs/btrfs/ioctl.c | 161 ++++++++++++++++++++++++++---------------------
 1 file changed, 91 insertions(+), 70 deletions(-)

-- 
2.17.0

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-05-18 15:42 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-02  5:15 [PATCH V3 0/3] Btrfs: btrfs_dedupe_file_range() ioctl, remove 16MiB restriction Timofey Titovets
2018-05-02  5:15 ` [PATCH V3 1/3] Btrfs: split btrfs_extent_same() for simplification Timofey Titovets
2018-05-02  5:15 ` [PATCH V3 2/3] Btrfs: btrfs_dedupe_file_range() ioctl, remove 16MiB restriction Timofey Titovets
2018-05-02  5:15 ` [PATCH V3 3/3] Btrfs: btrfs_extent_same() reuse cmp workspace Timofey Titovets
2018-05-11 15:22 ` [PATCH V3 0/3] Btrfs: btrfs_dedupe_file_range() ioctl, remove 16MiB restriction David Sterba
2018-05-18 15:40   ` David Sterba

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox