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=3D224851 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=3D189351&action= =3Dedit 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 t= hat needs to be worked around in the autofs code (I think this is similar in th= is 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/automount= ed | | 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!!!!!!!!! --=20 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>