Bump
Does anyone have any thoughts or guidance on how we might proceed with this?
On 01/12/2014 07:37 PM, Terry Bowling wrote:
Hello all,
After discussing further in RH BZ 1045086
(http://rhn.redhat.com/errata/RHSA-2013-1652.htmlincludes), we I would
like to discuss the following options with upstream for consistency.
1. Ensure the new warning for du is upstream: "mount point %s
already traversed"
2. Ensure the other commands are using the same message for
consistency (chcon, chmod, chown-core, remove)
3. Evaluate if a separate exit code for this condition is
appropriate. This would allow for slightly easier scripting to check
for this condition and rule out any concerns that the warning message
might change in the future.
4. Evaluate find, ls - does it make sense for these to be consistent
as well?
After discussing here, I will likely submit a BZ for #2 in against
RHEL. And if all agree, I can submit a BZ for #3 and/or #4 as well.
Thanks to all in advance for discussing this and helping us work this
out. I know it's a tedious topic. I will also document this behavior
for RHEL & Fedora to provide a final document to direct all future
inquiries so that we can quit discussing it in the future!
-Terry
On 12/19/2013 04:37 AM, Bernhard Voelker wrote:
On 12/18/2013 07:41 PM, Pádraig Brady wrote:
I need to look into this some more,
but we should at least reword the warning to something more generic
BTW: the diagnostic in du(1) has been improved in 8.20 by commit
http://git.sv.gnu.org/cgit/coreutils.git/commit/?id=cf7e1b5b
but chcon, chmod, chown, chgrp, rm, and mv are affected, too:
$ git grep emit_cycle_warning | cat
src/chcon.c: emit_cycle_warning (file_full_name);
src/chmod.c: emit_cycle_warning (file_full_name);
src/chown-core.c: emit_cycle_warning (file_full_name);
src/du.c: emit_cycle_warning (file);
src/remove.c: emit_cycle_warning (ent->fts_path);
src/system.h:#define emit_cycle_warning(file_name) \
e.g.
$ mount -t tmpfs tmpfs /mnt
$ mkdir /mnt/mnt
$ mount --bind /mnt /mnt/mnt
$ du /mnt
du: mount point ‘/mnt/mnt’ already traversed
0 /mnt
$ chown -R root /mnt
chown: 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:
‘/mnt/mnt’
Just for the record, non-FTS ls(1) uses a different diagnostic:
$ ls -R /mnt
/mnt:
mnt
ls: /mnt/mnt: not listing already-listed directory
It seems that there is still room for improvement.
Have a nice day,
Berny