Date: Tue, 02 Jan 2018 23:15:19 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 224851] Bug in getmntinfo(3) / getfsstat(2) ? Message-ID: <bug-224851-8@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224851 Bug ID: 224851 Summary: Bug in getmntinfo(3) / getfsstat(2) ? Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Severity: Affects Some People Priority: --- Component: kern Assignee: freebsd-bugs@FreeBSD.org Reporter: jamie@catflap.org Created attachment 189351 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=189351&action=edit test file to demonstrate the problem There appears to be a bug in the system call related to getmntinfo(3) / getfsstat(2), when if the "automount" flag is set on "nullfs" mounts, it is not returned on a getfsstat "WAIT" call. The non-refreshed, non-blocking "MNT_NOWAIT" produces the correct result. I first noticed this when debugging why my nullfs autofs partitions weren't being automatically unmounted. (FreeBSD current and release) If this is actually intended behaviour, please reassign this as something that needs to be worked around in the autofs code (I think this is similar in this regard to #195161 ) The somewhat hacked attached snippet from automount.c in the example below demonstrates this - When called with no parameters, it performs a MNT_WAIT request, otherwise a MNT_NOWAIT request is performed. The results are: | 14:24 [2] (1) "autofs" root@thompson# df | Filesystem 1K-blocks Used Avail Capacity Mounted on | /dev/ada1p2 5061628 707264 3949436 15% / | devfs 1 1 0 100% /dev | /dev/ada1p4 5061628 535004 4121696 11% /var | /dev/ada1p5 978973296 21689416 878966020 2% /usr | | 14:24 [2] (2) "autofs" root@thompson# mount | /dev/ada1p2 on / (ufs, local) | devfs on /dev (devfs, local, multilabel) | /dev/ada1p4 on /var (ufs, local, soft-updates) | /dev/ada1p5 on /usr (ufs, local, soft-updates) | | 14:25 [2] (3) "autofs" root@thompson# mkdir /tmp/automounted /tmp/manual | | 14:25 [2] (4) "autofs" root@thompson# mount -t nullfs -o ro /usr/src /tmp/manual | | 14:25 [2] (5) "autofs" root@thompson# mount -t nullfs -o ro,automounted /usr/src /tmp/automounted/ | | 14:26 [2] (6) "autofs" root@thompson# df | Filesystem 1K-blocks Used Avail Capacity Mounted on | /dev/ada1p2 5061628 707264 3949436 15% / | devfs 1 1 0 100% /dev | /dev/ada1p4 5061628 535004 4121696 11% /var | /dev/ada1p5 978973296 21689420 878966016 2% /usr | /usr/src 978973296 21689420 878966016 2% /tmp/manual | /usr/src 978973296 21689420 878966016 2% /tmp/automounted | | 14:26 [2] (7) "autofs" root@thompson# mount | /dev/ada1p2 on / (ufs, local) | devfs on /dev (devfs, local, multilabel) | /dev/ada1p4 on /var (ufs, local, soft-updates) | /dev/ada1p5 on /usr (ufs, local, soft-updates) | /usr/src on /tmp/manual (nullfs, local, read-only) | /usr/src on /tmp/automounted (nullfs, local, read-only, automounted) | | 14:26 [2] (8) "autofs" root@thompson# ./a.out | skipping /, not automounted | skipping /dev, not automounted | skipping /var, not automounted | skipping /usr, not automounted | skipping /tmp/manual, not automounted | skipping /tmp/automounted, not automounted | | 14:26 [2] (9) "autofs" root@thompson# ./a.out x | skipping /, not automounted | skipping /dev, not automounted | skipping /var, not automounted | skipping /usr, not automounted | skipping /tmp/manual, not automounted | /tmp/automounted IS automounted!!!!!!!!! -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-224851-8>
