Subject: bug#12730: coreutils-8.20: FAIL: tests/du/bind-mount-dir-cycle.sh

From: [email-masked]
Date: Fri, 26 Oct 2012 00:11:58 +0200 (CEST)

----- Mail original -----
> De: "Jim Meyering" <[email-masked]>
> À: "g esp" <[email-masked]>
> Cc: [email-masked]
> Envoyé: Jeudi 25 Octobre 2012 23:06:45
> Objet: bug#12730: coreutils-8.20: FAIL: tests/du/bind-mount-dir-cycle.sh
> 
> [email-masked] wrote:
> 
...
> > I don't understand why you conclude that a/b is missing in regular
> > mtab case.
> > To give shorter lines easier to read
> > [chroot-i486] root:/usr/src/coreutils-8.20$ cd /
> > [chroot-i486] root:/$ mkdir -p a/b
> > [chroot-i486] root:/$ mount --bind a a/b
> > [chroot-i486] root:/$ cat /etc/mtab
> > /dev/disk/by-uuid/7a235d64-5d04-41ac-a959-70465eb74fc8 / ext3
> > rw,relatime,errors=remount-ro,barrier=1,data=ordered 0 0
> > /a /a/b none rw,bind 0 0
> >
> > I see a/b here and umount know how use that a/b entry
> > [chroot-i486] root:/$ umount a/b
> > [chroot-i486] root:/$
> >
> > what is really missing?
> 
> In the above, is /etc/mtab a regular file?
yes
> Can you compare the contents with those of /proc/mounts?

essentially
-/dev/disk/by-uuid/7a235d64-5d04-41ac-a959-70465eb74fc8 /a/b ext3 rw,relatime,errors=remount-ro,barrier=1,data=ordered 0 0
+/a /a/b none rw,bind 0 0

> 
> It might be useful to make fill_mount_table print each
> mnt_ent->me_devname
> for which it calls hash_insert.
> 
> It sounds like the entry for a/b is being inserted when /etc/mtab
> points to /proc/mounts, but not in the other case.
> 
Yes, in that case, this line is exclude by the !mnt_ent->me_dummy condition.
The reason is that the fs value is 'none' and that qualify for the dummy list.

Gilles