-.I rwflag
-argument determines whether
-the file system can be written on; if it is 0 writing
-is allowed, if non-zero no writing is done.
-Physically write-protected and magnetic
-tape file systems must be mounted read-only or
-errors will occur when access times are updated,
-whether or not any
-explicit write is attempted.
-.PP
-.I Umount
-announces to the system that the
-.I special
-file is no longer to contain a removable file system.
-The associated file reverts to its ordinary interpretation.
-.SH "SEE ALSO"
-mount(8)
-.SH DIAGNOSTICS
-.I Mount
-returns 0 if the action occurred; \-1 if
-.I special
-is inaccessible or not an appropriate file; if
-.I name
-does not exist; if
-.I special
-is already mounted; if
-.I name
-is in use; or if
-there are already too many
-file systems mounted.
-.PP
-.I Umount
-returns 0 if the action occurred; \-1 if
-if the special file is inaccessible or
-does not have a mounted file system,
-or if there are active files in the mounted
-file system.
-.SH BUGS
-If a file containing holes
-(unallocated blocks)
-is read, even on a file system mounted read-only,
-the system will attempt to fill in the holes
-by writing on the device.
-.SH "ASSEMBLER (PDP-11)"
-(mount = 21.)
-.br
-.B sys mount; special; name; rwflag
-.PP
-(umount = 22.)
-.br
-.B sys umount; special
+.Fn umount
+function call disassociates the filesystem from the specified
+mount point
+.Fa dir .
+.Pp
+The
+.Fa flags
+argument may have one of the following values:
+.Bl -tag -width M_SYNCHRONOUS
+.It Dv MNT_NOFORCE
+The unmount should fail if any files are active on the file system.
+.It Dv MNT_FORCE
+The file system should be forcibly unmounted even if files are
+still active.
+Active special devices continue to work,
+but any further accesses to any other active files result in errors
+even if the file system is later remounted.
+.El
+.Sh RETURN VALUES
+The
+.Fn mount
+returns the value 0 if the mount was successful, otherwise -1 is returned
+and the variable
+.Va errno
+is set to indicate the error.
+.Pp
+.Nm Umount
+returns the value 0 if the umount succeeded; otherwise -1 is returned
+and the variable
+.Va errno
+is set to indicate the error.
+.Sh ERRORS
+.Fn Mount
+will fail when one of the following occurs:
+.Bl -tag -width [ENOTBLK]
+.It Bq Er EPERM
+The caller is not the super-user.
+.It Bq Er ENAMETOOLONG
+A component of a pathname exceeded 255 characters,
+or the entire length of a path name exceeded 1023 characters.
+.It Bq Er ELOOP
+Too many symbolic links were encountered in translating a pathname.
+.It Bq Er ENOENT
+A component of
+.Fa dir
+does not exist.
+.It Bq Er ENOTDIR
+A component of
+.Ar name
+is not a directory,
+or a path prefix of
+.Ar special
+is not a directory.
+.It Bq Er EINVAL
+A pathname contains a character with the high-order bit set.
+.It Bq Er EBUSY
+Another process currently holds a reference to
+.Fa dir .
+.It Bq Er EFAULT
+.Fa Dir
+points outside the process's allocated address space.
+.El
+.Pp
+The following errors can occur for a
+.Em ufs
+file system mount:
+.Bl -tag -width [ENOTBLK]
+.It Bq Er ENODEV
+A component of ufs_args
+.Ar fspec
+does not exist.
+.It Bq Er ENOTBLK
+.Ar Fspec
+is not a block device.
+.It Bq Er ENXIO
+The major device number of
+.Ar fspec
+is out of range (this indicates no device driver exists
+for the associated hardware).
+.It Bq Er EBUSY
+.Ar Fspec
+is already mounted.
+.It Bq Er EMFILE
+No space remains in the mount table.
+.It Bq Er EINVAL
+The super block for the file system had a bad magic
+number or an out of range block size.
+.It Bq Er ENOMEM
+Not enough memory was available to read the cylinder
+group information for the file system.
+.It Bq Er EIO
+An I/O error occurred while reading the super block or
+cylinder group information.
+.It Bq Er EFAULT
+.Ar Fspec
+points outside the process's allocated address space.
+.El
+.Pp
+The following errors can occur for a
+.Em nfs
+file system mount:
+.Bl -tag -width [ENOTBLK]
+.It Bq Er ETIMEDOUT
+.Em Nfs
+timed out trying to contact the server.
+.It Bq Er EFAULT
+Some part of the information described by nfs_args
+points outside the process's allocated address space.
+.El
+.Pp
+The following errors can occur for a
+.Em mfs
+file system mount:
+.Bl -tag -width [ENOTBLK]
+.It Bq Er EMFILE
+No space remains in the mount table.
+.It Bq Er EINVAL
+The super block for the file system had a bad magic
+number or an out of range block size.
+.It Bq Er ENOMEM
+Not enough memory was available to read the cylinder
+group information for the file system.
+.It Bq Er EIO
+An paging error occurred while reading the super block or
+cylinder group information.
+.It Bq Er EFAULT
+.Em Name
+points outside the process's allocated address space.
+.El
+.Pp
+.Nm Umount
+may fail with one of the following errors:
+.Bl -tag -width [ENOTBLK]
+.It Bq Er EPERM
+The caller is not the super-user.
+.It Bq Er ENOTDIR
+A component of the path is not a directory.
+.It Bq Er EINVAL
+The pathname contains a character with the high-order bit set.
+.It Bq Er ENAMETOOLONG
+A component of a pathname exceeded 255 characters,
+or an entire path name exceeded 1023 characters.
+.It Bq Er ELOOP
+Too many symbolic links were encountered in translating the pathname.
+.It Bq Er EINVAL
+The requested directory is not in the mount table.
+.It Bq Er EBUSY
+A process is holding a reference to a file located
+on the file system.
+.It Bq Er EIO
+An I/O error occurred while writing cached file system information.
+.It Bq Er EFAULT
+.Fa Dir
+points outside the process's allocated address space.
+.El
+.Pp
+A
+.Em ufs
+or
+.Em mfs
+mount can also fail if the maximum number of filesystems are currently
+mounted.
+.Sh SEE ALSO
+.Xr mount 8 ,
+.Xr umount 8 ,
+.Xr mfs 8
+.Sh BUGS
+Some of the error codes need translation to more obvious messages.
+.Sh HISTORY
+.Fn Mount
+and
+.Fn umount
+function calls appeared in Version 6 AT&T UNIX.