GNU bug report logs - #20570
Test dd/sparse.sh fail with btrfs

Previous Next

Package: coreutils;

Reported by: Sébastien Luttringer <seblu <at> seblu.net>

Date: Thu, 14 May 2015 05:26:02 UTC

Severity: normal

Merged with 20574

Done: Pádraig Brady <P <at> draigBrady.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 20570 in the body.
You can then email your comments to 20570 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-coreutils <at> gnu.org:
bug#20570; Package coreutils. (Thu, 14 May 2015 05:26:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sébastien Luttringer <seblu <at> seblu.net>:
New bug report received and forwarded. Copy sent to bug-coreutils <at> gnu.org. (Thu, 14 May 2015 05:26:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sébastien Luttringer <seblu <at> seblu.net>
To: bug-coreutils <at> gnu.org
Subject: Test dd/sparse.sh fail with btrfs
Date: Thu, 14 May 2015 04:53:57 +0200
Hello,

I experience one test suite failure when I tried to rebuild the
coreutils v8.23 package. My system is an archlinux host with a btrfs
filesystem.

The test doesn't fail when I run it in a tmpfs. I'm pretty sure it used
to works over btrfs in july 2014[1] when I built the previous package
for archlinux.

The failing section is the following:

  # Ensure NUL blocks smaller than the block size are not made sparse.
  # Here, with a 2MiB block size, dd's conv=sparse must *not*
introduce a hole. 
  dd if=file.in of=file.out bs=2M conv=sparse
  test 2500 -lt $(kb_alloc file.out) || fail=1

You can see the full shell output here: http://pastebin.com/XADb1BKj

Regards,

[1] https://www.archlinux.org/packages/core/x86_64/coreutils/

-- 
Sébastien "Seblu" Luttringer
https://seblu.net | Twitter: @seblu42
GPG: 0x2072D77A





Information forwarded to bug-coreutils <at> gnu.org:
bug#20570; Package coreutils. (Thu, 14 May 2015 10:49:02 GMT) Full text and rfc822 format available.

Message #8 received at 20570 <at> debbugs.gnu.org (full text, mbox):

From: Pádraig Brady <P <at> draigBrady.com>
To: Sébastien Luttringer <seblu <at> seblu.net>, 
 20570 <at> debbugs.gnu.org
Subject: Re: bug#20570: Test dd/sparse.sh fail with btrfs
Date: Thu, 14 May 2015 11:48:30 +0100
[Message part 1 (text/plain, inline)]
On 14/05/15 03:53, Sébastien Luttringer wrote:
> Hello,
> 
> I experience one test suite failure when I tried to rebuild the
> coreutils v8.23 package. My system is an archlinux host with a btrfs
> filesystem.
> 
> The test doesn't fail when I run it in a tmpfs. I'm pretty sure it used
> to works over btrfs in july 2014[1] when I built the previous package
> for archlinux.
> 
> The failing section is the following:
> 
>   # Ensure NUL blocks smaller than the block size are not made sparse.
>   # Here, with a 2MiB block size, dd's conv=sparse must *not*
> introduce a hole. 
>   dd if=file.in of=file.out bs=2M conv=sparse
>   test 2500 -lt $(kb_alloc file.out) || fail=1
> 
> You can see the full shell output here: http://pastebin.com/XADb1BKj
> 
> Regards,
> 
> [1] https://www.archlinux.org/packages/core/x86_64/coreutils/

It seems the allocation is async.
I also see this intermittently with BTRFS on 4.0.0-0.rc5.git4.1.fc22.x86_64
I've been unable to reproduce with the attached
which syncs the file before checking the allocation.

thanks!
Pádraig.
[dd-sparse-btrfs.patch (text/x-patch, attachment)]

bug closed, send any further explanations to 20570 <at> debbugs.gnu.org and Sébastien Luttringer <seblu <at> seblu.net> Request was from Pádraig Brady <P <at> draigBrady.com> to control <at> debbugs.gnu.org. (Thu, 14 May 2015 10:51:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-coreutils <at> gnu.org:
bug#20570; Package coreutils. (Thu, 14 May 2015 13:16:02 GMT) Full text and rfc822 format available.

Message #13 received at 20570 <at> debbugs.gnu.org (full text, mbox):

From: Pádraig Brady <P <at> draigBrady.com>
To: Sébastien Luttringer <seblu <at> seblu.net>, 
 20570 <at> debbugs.gnu.org
Subject: Re: bug#20574: Test du/2g.sh fails with btrfs
Date: Thu, 14 May 2015 14:14:58 +0100
[Message part 1 (text/plain, inline)]
forcemerge 20570 20574
stop

On 14/05/15 13:19, Sébastien Luttringer wrote:
> Hello,
> 
> In the same spirit than my yesterday report[1], the following test
> fail on btrfs when it works on tmpfs.
> 
> $ RUN_VERY_EXPENSIVE_TESTS=yes ./tests/du/2g.sh
> creating a 2GB file: 100% complete--- exp 2015-05-14 14:03:36.124772165 +0200+++ out 2015-05-14 14:03:36.123772158 +0200@@ -1 +1 @@-~2M+1572864        big
> You can find the full output of the test suite here [2].
> Regards,
> [1] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20570
> [2] http://pastebin.com/akytxtts

Drats I only tested on a 1G BTRFS loopback partition and so missed that.
Updated patch is attached.

cheers,
Pádraig.

[btrfs-alloc.patch (text/x-patch, attachment)]

Forcibly Merged 20570 20574. Request was from Pádraig Brady <P <at> draigBrady.com> to control <at> debbugs.gnu.org. (Thu, 14 May 2015 13:16:04 GMT) Full text and rfc822 format available.

Information forwarded to bug-coreutils <at> gnu.org:
bug#20570; Package coreutils. (Thu, 14 May 2015 15:14:02 GMT) Full text and rfc822 format available.

Message #18 received at 20570 <at> debbugs.gnu.org (full text, mbox):

From: Sébastien Luttringer <seblu <at> seblu.net>
To: Pádraig Brady <P <at> draigBrady.com>
Cc: 20570 <at> debbugs.gnu.org
Subject: Re: bug#20574: Test du/2g.sh fails with btrfs
Date: Thu, 14 May 2015 17:13:17 +0200
[Message part 1 (text/plain, inline)]
Hello,

I made few adjustments to get the patch compile with released version; but no more error.

Thanks!

On Thu, 2015-05-14 at 14:14 +0100, Pádraig Brady wrote:
> forcemerge 20570 20574
> stop
> 
> On 14/05/15 13:19, Sébastien Luttringer wrote:
> > Hello,
> > 
> > In the same spirit than my yesterday report[1], the following test
> > fail on btrfs when it works on tmpfs.
> > 
> > $ RUN_VERY_EXPENSIVE_TESTS=yes ./tests/du/2g.sh
> > creating a 2GB file: 100% complete--- exp 2015-05-14 
> > 14:03:36.124772165 +0200+++ out 2015-05-14 14:03:36.123772158 
> > +0200@@ -1 +1 @@-~2M+1572864        big
> > You can find the full output of the test suite here [2].
> > Regards,
> > [1] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20570
> > [2] http://pastebin.com/akytxtts
> 
> Drats I only tested on a 1G BTRFS loopback partition and so missed 
> that.
> Updated patch is attached.
> 
> cheers,
> Pádraig.
> 

-- 
Sébastien "Seblu" Luttringer
https://seblu.net | Twitter: @seblu42
GPG: 0x2072D77A
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-coreutils <at> gnu.org:
bug#20570; Package coreutils. (Thu, 14 May 2015 19:33:03 GMT) Full text and rfc822 format available.

Message #21 received at 20570 <at> debbugs.gnu.org (full text, mbox):

From: Bernhard Voelker <mail <at> bernhard-voelker.de>
To: Pádraig Brady <P <at> draigBrady.com>, Sébastien Luttringer <seblu <at> seblu.net>, 
 20570 <at> debbugs.gnu.org
Subject: Re: bug#20570: bug#20574: Test du/2g.sh fails with btrfs
Date: Thu, 14 May 2015 21:32:40 +0200
[Message part 1 (text/plain, inline)]
On 05/14/2015 03:14 PM, Pádraig Brady wrote:
> --- a/tests/tail-2/inotify-rotate-resources.sh
> +++ b/tests/tail-2/inotify-rotate-resources.sh
> @@ -25,7 +25,7 @@ grep '^#define HAVE_INOTIFY 1' "$CONFIG_HEADER" >/dev/null \
>  require_strace_ 'inotify_add_watch,inotify_rm_watch'
>  
>  # Quickly skip on remote file systems
> -df --local . >/dev/null 2>&1 ||
> +is_local_dir . >/dev/null 2>&1 ||
>    skip_ 'inotify not used on remote file system'
>  
>  check_tail_output()

That test is now skipped on a local ext4 file system:

+ is_local_dir .
./tests/tail-2/inotify-rotate-resources.sh: line 28: is_local_dir: command not found
+ skip_ 'inotify not used on remote file system'

The attached fixes this: s/(is_local_dir)/\1_/

Have a nice day,
Berny
[0001-tests-fix-check-for-local-file-system-in-inotify-rot.patch (text/x-patch, attachment)]

Information forwarded to bug-coreutils <at> gnu.org:
bug#20570; Package coreutils. (Thu, 14 May 2015 22:21:04 GMT) Full text and rfc822 format available.

Message #24 received at 20570 <at> debbugs.gnu.org (full text, mbox):

From: Pádraig Brady <P <at> draigBrady.com>
To: Bernhard Voelker <mail <at> bernhard-voelker.de>, Sébastien Luttringer <seblu <at> seblu.net>, 20570 <at> debbugs.gnu.org
Subject: Re: bug#20570: bug#20574: Test du/2g.sh fails with btrfs
Date: Thu, 14 May 2015 23:20:50 +0100
On 14/05/15 20:32, Bernhard Voelker wrote:
> On 05/14/2015 03:14 PM, Pádraig Brady wrote:
>> --- a/tests/tail-2/inotify-rotate-resources.sh
>> +++ b/tests/tail-2/inotify-rotate-resources.sh
>> @@ -25,7 +25,7 @@ grep '^#define HAVE_INOTIFY 1' "$CONFIG_HEADER" >/dev/null \
>>  require_strace_ 'inotify_add_watch,inotify_rm_watch'
>>  
>>  # Quickly skip on remote file systems
>> -df --local . >/dev/null 2>&1 ||
>> +is_local_dir . >/dev/null 2>&1 ||
>>    skip_ 'inotify not used on remote file system'
>>  
>>  check_tail_output()
> 
> That test is now skipped on a local ext4 file system:
> 
> + is_local_dir .
> ./tests/tail-2/inotify-rotate-resources.sh: line 28: is_local_dir: command not found
> + skip_ 'inotify not used on remote file system'
> 
> The attached fixes this: s/(is_local_dir)/\1_/

Drats.
Thanks for catching that.

Pádraig




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 12 Jun 2015 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 10 years and 90 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.