GNU bug report logs - #19238
Fully fix du circular warning on bind mounts

Previous Next

Package: coreutils;

Reported by: Boris Ranto <borix60 <at> gmail.com>

Date: Mon, 1 Dec 2014 09:02:02 UTC

Severity: normal

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

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Boris Ranto <borix60 <at> gmail.com>
Subject: bug#19238: closed (Re: bug#19238: Fully fix du circular warning
 on bind mounts)
Date: Mon, 01 Dec 2014 12:51:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#19238: Fully fix du circular warning on bind mounts

which was filed against the coreutils package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 19238 <at> debbugs.gnu.org.

-- 
19238: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19238
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Pádraig Brady <P <at> draigBrady.com>
To: Boris Ranto <borix60 <at> gmail.com>, 19238-done <at> debbugs.gnu.org
Subject: Re: bug#19238: Fully fix du circular warning on bind mounts
Date: Mon, 01 Dec 2014 12:49:59 +0000
On 01/12/14 08:54, Boris Ranto wrote:
> The du circular warning can still be hit even though a file system is in
> good condition. All we need to do is to get the message is to begin
> traversing the file system between the bind mount source and bind mount
> target directories, i.e this short script reproduces the problem:
> 
> # mkdir -p a/b/c
> # mount -o bind a a/b/c
> # du a/b
> 
> The problem is that in this case, the first directory that is detected
> by fts as a duplicate directory is directory a/b/c/b which is not a
> mount point.
> 
> The solution is to traverse the structure all the way to a/b (excluding
> a/b) which is detected as the base of the cycle and look up all these
> directories in the mount table.
> 
> I'm attaching the patch that fixed this problem for me.

Very nice. Thanks for the test!
I'll add a NEWS entry and push later.

thanks!
Pádraig


[Message part 3 (message/rfc822, inline)]
From: Boris Ranto <borix60 <at> gmail.com>
To: bug-coreutils <at> gnu.org
Subject: Fully fix du circular warning on bind mounts
Date: Mon, 01 Dec 2014 09:54:38 +0100
[Message part 4 (text/plain, inline)]
The du circular warning can still be hit even though a file system is in
good condition. All we need to do is to get the message is to begin
traversing the file system between the bind mount source and bind mount
target directories, i.e this short script reproduces the problem:

# mkdir -p a/b/c
# mount -o bind a a/b/c
# du a/b

The problem is that in this case, the first directory that is detected
by fts as a duplicate directory is directory a/b/c/b which is not a
mount point.

The solution is to traverse the structure all the way to a/b (excluding
a/b) which is detected as the base of the cycle and look up all these
directories in the mount table.

I'm attaching the patch that fixed this problem for me.

-Boris
[0001-du-handle-sub-bind-mount-cycles-gracefully.patch (text/x-patch, attachment)]

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

Previous Next


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