Date: Sat, 19 Jul 2003 17:11:28 -0700 (PDT) From: Ian Dowse <iedowse@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sbin/umount umount.c Message-ID: <200307200011.h6K0BSHO069884@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
iedowse 2003/07/19 17:11:27 PDT FreeBSD src repository Modified files: sbin/umount umount.c Log: Take advantage of the use of file system IDs to simplify umount(8) and make it work more reliably in a number of cases that have traditionally been troublesome. The new behaviour is: 1) If the filesystem can be determined by the fsid or device, or uniquely identified by the mountpoint, then just go ahead and call unmount(2) using the file system ID. 2) Otherwise use fstatfs(2) to resolve the path into a file system ID (checking with stat(2) that it is a filesystem root directory). Case 2 can potentially block if an NFS server is down, but it can always be avoided by using an unambiguous specification. It handles all the hard cases such as symlinks and mismatches between the mount list and reality. For example, if a filesystem was mounted as /mnt inside a chroot, it will show up in the mount list as /mnt, but now you can unmount it from outside the chroot with "umount /chroot_path/mnt". Revision Changes Path 1.39 +144 -298 src/sbin/umount/umount.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200307200011.h6K0BSHO069884>