Some patches has review, some not, all compile tested and hand tested.
(i.e. boot into patched system and do some small tests).

All based on kDave for-next branch

Patches:
1. Just remove useless u64 num_bytes from compress_file_range()
   No functional changes
2. For make compression on on mmap'd files safe,
   while compression logic works, we switch page dirty page bit on whole
   input range, but input range can be much bigger the 128KiB
   So try optimize that by only switch bits on current compression range
3. Function:
   extent_range_clear_dirty_for_io()
   extent_range_redirty_for_io()
   btrfs_set_range_writeback()
   Used to switch some bits on pages,
   but use not obvious while (index <= end_index) to cover
   unaligned end to pages.
   (I don't think that not obvious for me only, as on IRC no one can help me
   understand that until i found answer)
   So i change handling of unaligned end to more obvious way
4. btrfs_dedupe_file_range() on range bigger then 16MiB
   instead of return error, silently set it to 16MiB.
   So just add loop over input range, to get working bigger range
   P.S. May be that make a sense to change loop iterator to some lower value
   if one of deduped files are compressed?

Thanks.

Timofey Titovets (4):
  Btrfs: compress_file_range() remove dead variable num_bytes
  Btrfs: clear_dirty only on pages in compression range
  Btrfs: handle unaligned tail of data ranges more efficient
  Btrfs: btrfs_dedupe_file_range() ioctl, remove 16MiB restriction

 fs/btrfs/extent_io.c | 12 ++++++++++--
 fs/btrfs/inode.c     | 43 ++++++++++++++++++++++++++++++-------------
 fs/btrfs/ioctl.c     | 22 ++++++++++++++++++----
 3 files changed, 58 insertions(+), 19 deletions(-)

--
2.14.2
--
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

Reply via email to