Eric Wong wrote on Sun, Jan 30, 2022 at 09:49:08PM +0000:
> Thanks for testing the previous patch.  Actually, I prefer we
> drop previous implementations and instead rely on Linux ABI
> stability while shifting maintenance burden to maintainers.

This makes sense.

> Can you test the patch below?  It supercedes the other one.

I've tested the patch with a btrfs test directory and this test:
BTRFS_TESTDIR=... prove -bvw t/nodatacow.t

after adding the local git repo to PERL5LIBs

With a BTRFS dir as BTRFS it all works, the ioctl are passed and files
are indeed nocow (checked with lsattr afterwards as files aren't
deleted)

With a tmpfs instead the tests fail as it tried to call the ioctl
anyway -- I didn't take the time to check if thest mtab parsing was
removed, is the ioctl tried anyway or does setting the environment
variable skip this part?
If so then it's probably fine.

(the failure is as below:
------
$ BTRFS_TESTDIR=/tmp/test strace -o /tmp/strace -f prove -bvw t/nodatacow.t 
t/nodatacow.t .. 
ok 1 - use PublicInbox::Syscall;
/run/current-system/sw/bin/lsattr: Operation not supported While reading flags 
on /tmp/test/nodatacow-rfqh/pp.f
not ok 2 - `C' attribute set on fd with pure Perl

#   Failed test '`C' attribute set on fd with pure Perl'
#   at t/nodatacow.t line 31.
#                   ''
#     doesn't match '(?^:C.*\/tmp\/test\/nodatacow\-rfqh\/pp\.f)'
/run/current-system/sw/bin/lsattr: Operation not supported While reading flags 
on /tmp/test/nodatacow-rfqh/pp.d
not ok 3 - `C' attribute set on dir with pure Perl

#   Failed test '`C' attribute set on dir with pure Perl'
#   at t/nodatacow.t line 38.
#                   ''
#     doesn't match '(?^:C.*\/tmp\/test\/nodatacow\-rfqh\/pp\.d)'
1..3
# Looks like you failed 2 tests of 3.
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/3 subtests 

Test Summary Report
-------------------
t/nodatacow.t (Wstat: 512 Tests: 3 Failed: 2)
  Failed tests:  2-3
  Non-zero exit status: 2
Files=1, Tests=3,  1 wallclock secs ( 0.04 usr  0.08 sys +  0.15 cusr  0.21 
csys =  0.48 CPU)
Result: FAIL
--------

> Apologies for the delay, I've pretty much lost all motivation for
> everything in life :<  Will try to find some energy to look into the
> other issues in a bit...

No worry, one step at a time is good :)

Wish you the best,
-- 
Dominique

Reply via email to