GNU bug report logs - #16189
FAIL: tests/du/bind-mount-dir-cycle --- patch attached

Previous Next

Package: coreutils;

Reported by: Andrew Warshall <warshall <at> 99main.com>

Date: Thu, 19 Dec 2013 01:20:01 UTC

Severity: normal

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 16189 in the body.
You can then email your comments to 16189 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#16189; Package coreutils. (Thu, 19 Dec 2013 01:20:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Andrew Warshall <warshall <at> 99main.com>:
New bug report received and forwarded. Copy sent to bug-coreutils <at> gnu.org. (Thu, 19 Dec 2013 01:20:02 GMT) Full text and rfc822 format available.

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

From: Andrew Warshall <warshall <at> 99main.com>
To: bug-coreutils <at> gnu.org
Subject: FAIL: tests/du/bind-mount-dir-cycle --- patch attached
Date: Wed, 18 Dec 2013 20:43:37 -0500
[Message part 1 (text/plain, inline)]
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi-

   I'm resending this since it didn't seem to go through the first
   time; also, I think I have a solution.

   This test fails on my system (Linux 3.7.10 kernel, glibc-2.17);
   apparently "du a" is giving as output :

du: WARNING: Circular directory structure.
This almost certainly means that you have a corrupted file system.
NOTIFY YOUR SYSTEM MANAGER.
The following directory is part of the cycle:
  'a/b'

   instead of the expected

du: mount point 'a/b' already traversed

   Apparently, ./configure is assuming I don't have hasmntopt(), which
   has become an issue because lib/mountlist.c now protects hasmntopt()
   with #defines

   I've attached a patch, but I don't have autoconf; so someone who
   does should test it before committing it.

                            Yours,

                            Andrew Warshall
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.13 (GNU/Linux)

iQEcBAEBAgAGBQJSsk9JAAoJEESPRWh79T7tp6gIALzKEynBq3TN+kVR1jHQ7VNt
6SyVjn6N62wNcJfu2x81RRtOcU/ZpqoFOw2ygF+cCSblsm0Ji8M8z4vFq/c79Lrn
Luq0N8DG/WjYmFPMuKmo8ji8Dyn5xJBkHn6Xby/P9819N4vqKM++TAXg7a2RjidM
yVJgXaLJTy5VUpjO7bqGUEP6T61GkEzdnW9syE8cZs/mZhJfqlvHJKJaIHdVFwFX
nDNsI9Rcfy0QS65y5oeVkcEHOflBX1sGAP5y5E3xIaHEekmOSPQF74+teoRYLrJl
/he9DNnKQcR8AFRXdFSc0Ozn567I8c1rKNMv9BLyd/HHUrpZhwed1Znq1nin7Zs=
=oARV
-----END PGP SIGNATURE-----
[coreutils-8.22-hasmntopt.patch (application/octet-stream, attachment)]

Information forwarded to bug-coreutils <at> gnu.org:
bug#16189; Package coreutils. (Thu, 19 Dec 2013 02:36:01 GMT) Full text and rfc822 format available.

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

From: Pádraig Brady <P <at> draigBrady.com>
To: Andrew Warshall <warshall <at> 99main.com>
Cc: 16189 <at> debbugs.gnu.org, bug-gnulib <bug-gnulib <at> gnu.org>,
 Terry Bowling <tbowling <at> redhat.com>, jwk <at> redhat.com
Subject: Re: bug#16189: FAIL: tests/du/bind-mount-dir-cycle --- patch attached
Date: Thu, 19 Dec 2013 02:35:15 +0000
[Message part 1 (text/plain, inline)]
On 12/19/2013 01:43 AM, Andrew Warshall wrote:
> Hi-
> 
>    I'm resending this since it didn't seem to go through the first
>    time; also, I think I have a solution.
> 
>    This test fails on my system (Linux 3.7.10 kernel, glibc-2.17);
>    apparently "du a" is giving as output :
> 
> du: WARNING: Circular directory structure.
> This almost certainly means that you have a corrupted file system.
> NOTIFY YOUR SYSTEM MANAGER.
> The following directory is part of the cycle:
>   'a/b'
> 
>    instead of the expected
> 
> du: mount point 'a/b' already traversed
> 
>    Apparently, ./configure is assuming I don't have hasmntopt(), which
>    has become an issue because lib/mountlist.c now protects hasmntopt()
>    with #defines
> 
>    I've attached a patch, but I don't have autoconf; so someone who
>    does should test it before committing it.

CC'ing gnulib as that's where this check originates.
Also CC'ing interested parties from this related thread from today:
http://lists.gnu.org/archive/html/coreutils/2013-12/msg00143.html

Thanks for the analysis and patch!

Pádraig.
[coreutils-8.22-hasmntopt.patch (text/x-patch, attachment)]

Reply sent to Pádraig Brady <P <at> draigBrady.com>:
You have taken responsibility. (Wed, 09 Jul 2014 10:07:03 GMT) Full text and rfc822 format available.

Notification sent to Andrew Warshall <warshall <at> 99main.com>:
bug acknowledged by developer. (Wed, 09 Jul 2014 10:07:03 GMT) Full text and rfc822 format available.

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

From: Pádraig Brady <P <at> draigBrady.com>
To: "Gabor Z. Papp" <gzp <at> papp.hu>
Cc: 16189-done <at> debbugs.gnu.org, 17833 <at> debbugs.gnu.org,
 Andrew D Warshall <warshall <at> 99main.com>, bug-gnulib <bug-gnulib <at> gnu.org>
Subject: Re: bug#17833: coreutils 8.22 df
Date: Wed, 09 Jul 2014 11:06:13 +0100
On 07/09/2014 10:18 AM, Pádraig Brady wrote:
> Apologies for resend. GNU mailers were having issues yesterday...
> 
> On 06/25/2014 01:24 PM, Gabor Z. Papp wrote:
>> * Pádraig Brady <P <at> draigBrady.com>:
>>
>> | > $ cat /etc/mtab 
>> | > /dev/md0 / ext3 rw,errors=remount-ro 0 0
>> | > proc /proc proc rw,relatime 0 0
>> | > sysfs /sys sysfs rw,relatime 0 0
>> | > tmpfs /dev tmpfs rw,relatime,size=4k,mode=755 0 0
>> | > devpts /dev/pts devpts rw,relatime,mode=620 0 0
>> | > /dev/md1 /var/archive ext3 rw,errors=remount-ro 0 1
>> | > /var/archive/home /home none rw,bind 0 0
>> | > /var/archive/spool /var/spool none rw,bind 0 0
>> | > /var/archive/www /var/lib/www none rw,bind 0 0
>>
>> | Is this mtab really a link to /proc/mounts?
>>
>> No, its a standalone file.
>>
>> | That's the normal case on modern Linux distros.
>>
>> Its not a modern linux. :-)
>>
>> | > $ df-8.22 -h
>> | > Filesystem      Size  Used Avail Use% Mounted on
>> | > /dev/md0         21G  8.8G   11G  46% /
>> | > tmpfs           4.0K     0  4.0K   0% /dev
>> | > 
>> | > And where is /dev/md1 ?
>>
>> | Not sure what's going on here.
>> | Since you've compiled various versions,
>> | could you replace src/df.c in your 8.22 build dir with:
>> | http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=blob_plain;f=src/df.c;hb=HEAD
>> | There have been many df changes since 8.22, so it would
>> | be good to check with the latest.
>>
>> $ /tmp/df-git -h
>> Filesystem      Size  Used Avail Use% Mounted on
>> /dev/md0         21G  9.0G   11G  47% /
>> tmpfs           4.0K     0  4.0K   0% /dev
>>
>> Same problem, /dev/md1 missing.
> 
> The missing entry is due to the bind mounts being classified as "dummy" devices.
> There is code in gnulib to explicitly avoid that for bind mounts,
> however that was negated with this change:
> http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=62bb7a8b
> Now that change is correct in isolation, but when combined
> with the incomplete original change, it triggered the issue.
> The attached patch should fix this up.

Actually this was the cause of another bug wrt bind mounts in du.
Andrew had identified the issue independently, so I'm applying this
in this name now and marking http://bugs.gnu.org/16189 as done

thanks,
Pádraig.





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

This bug report was last modified 9 years and 264 days ago.

Previous Next


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