Re: [PATCH] btrfs: test send optimal cloning behaviour

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Wed, Jan 25, 2023 at 01:21:21PM +0100, David Disseldorp wrote:
> On Wed, 25 Jan 2023 11:07:54 +0000, fdmanana@xxxxxxxxxx wrote:
> 
> > From: Filipe Manana <fdmanana@xxxxxxxx>
> > 
> > Test that send operations do the best cloning decisions when we have
> > extents that are shared but some files refer to the full extent while
> > others refer to only a section of the extent.
> > 
> > This exercises an optimization that was added to kernel 6.2, by the
> > following commit:
> > 
> >   c7499a64dcf6 ("btrfs: send: optimize clone detection to increase extent sharing")
> > 
> > Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
> > ---
> >  tests/btrfs/283     | 88 +++++++++++++++++++++++++++++++++++++++++++++
> >  tests/btrfs/283.out | 26 ++++++++++++++
> >  2 files changed, 114 insertions(+)
> >  create mode 100755 tests/btrfs/283
> >  create mode 100644 tests/btrfs/283.out
> > 
> > diff --git a/tests/btrfs/283 b/tests/btrfs/283
> > new file mode 100755
> > index 00000000..c1f6007d
> > --- /dev/null
> > +++ b/tests/btrfs/283
> > @@ -0,0 +1,88 @@
> > +#! /bin/bash
> > +# SPDX-License-Identifier: GPL-2.0
> > +# Copyright (C) 2023 SUSE Linux Products GmbH. All Rights Reserved.
> > +#
> > +# FS QA Test 283
> > +#
> > +# Test that send operations do the best cloning decisions when we have extents
> > +# that are shared but some files refer to the full extent while others refer to
> > +# only a section of the extent.
> > +#
> > +. ./common/preamble
> > +_begin_fstest auto quick send clone fiemap
> > +
> > +. ./common/filter
> > +. ./common/reflink
> > +. ./common/punch # for _filter_fiemap_flags
> > +
> > +_supported_fs btrfs
> > +_require_test
> > +_require_scratch_reflink
> > +_require_cp_reflink
> > +_require_xfs_io_command "fiemap"
> > +_require_fssum
> > +
> > +_wants_kernel_commit c7499a64dcf6 \
> > +	     "btrfs: send: optimize clone detection to increase extent sharing"
> > +
> > +send_files_dir=$TEST_DIR/btrfs-test-$seq
> > +send_stream=$send_files_dir/snap.stream
> > +snap_fssum=$send_files_dir/snap.fssum
> > +
> > +rm -fr $send_files_dir
> > +mkdir $send_files_dir
> 
> I'm not sure what the rules are regarding TEST_DIR residuals, but it
> might be worth adding a custom _cleanup() for $send_files_dir .
> Anyhow, looks good as-is.

Thanks for reviewing this patch. The $send_files_dir (and files under it) won't
take big space (maybe < 1M). So I think we can keep it in TEST_DIR, don't need
more changes :)

Thanks,
Zorro

> Reviewed-by: David Disseldorp <ddiss@xxxxxxx>
> 




[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux