MNT_FORCE
#define MOPT_FORCE { "force", 0, MNT_FORCE, 0 }
if (!(flags & MNT_FORCE))
return unmount(ps->ps_target, MNT_FORCE);
rump_sys_unmount(mountpath, MNT_FORCE);
mntflag = MNT_FORCE;
fflag = MNT_FORCE;
if (fflag == MNT_FORCE) {
if (ai != NULL && !(fflag & MNT_FORCE)) {
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (mp->mnt_flag & MNT_FORCE) {
if (!(mp->mnt_flag & MNT_FORCE)) {
if (!(mp->mnt_flag & MNT_FORCE)) {
err = vflush(mp, NULL, (mntflags & MNT_FORCE) ? FORCECLOSE : 0);
if (!(mp->mnt_flag & MNT_FORCE)) {
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (mp->mnt_flag & MNT_FORCE)
msdosfs_unmount(mp, MNT_FORCE);
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE) {
if ((mntflags & MNT_FORCE) && error != 0 && ++trycnt < 30)
} while ((mntflags & MNT_FORCE) && error != 0 && trycnt < 30);
if ((mntflags & MNT_FORCE) == 0)
nilfs_unmount(mp, MNT_FORCE);
nilfs_unmount(mp, MNT_FORCE);
flags = (mntflags & MNT_FORCE) ? FORCECLOSE : 0;
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
(void)dounmount(mp, MNT_FORCE, curlwp);
(void)dounmount(mp, MNT_FORCE, curlwp);
force = mntflags & MNT_FORCE;
mntflags & MNT_FORCE ? FORCECLOSE : 0)) != 0)
if ((mp->mnt_flag & MNT_FORCE))
if (mntflags & MNT_FORCE)
flags = (mntflags & MNT_FORCE) ? FORCECLOSE : 0;
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
mntflags & MNT_FORCE ? FORCECLOSE : 0)) != 0)
if ((error = dounmount(mp, MNT_FORCE, l)) == 0) {
if ((error = dounmount(mp, force ? MNT_FORCE : 0, l)) == 0) {
mp->mnt_flag = flags & (MNT_BASIC_FLAGS | MNT_FORCE | MNT_IGNORE);
if (VFS_UNMOUNT(mp, MNT_FORCE) != 0)
if (((mp->mnt_flag & MNT_RDONLY) == 0) && ((flags & MNT_FORCE) == 0)) {
if (error == 0 || (flags & MNT_FORCE)) {
if (mntflags & MNT_FORCE)
if (vrefcnt(rtvp) > 1 && (mntflags & MNT_FORCE) == 0)
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (vrefcnt(null_rootvp) > 1 && (mntflags & MNT_FORCE) == 0)
if (mntflags & MNT_FORCE)
if (vrefcnt(overlay_rootvp) > 1 && (mntflags & MNT_FORCE) == 0)
if (mntflags & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (vrefcnt(rtvp) > 1 && (mntflags & MNT_FORCE) == 0)
if (mntflags & MNT_FORCE) {
if ((mntflags & MNT_FORCE) == 0 && vrefcnt(vp) > 1) {
if (mntflags & MNT_FORCE) {
if ((mp->mnt_flag & MNT_FORCE))
if (panicstr || mntflags & MNT_FORCE)
MNT_RELOAD | MNT_FORCE | MNT_UPDATE))
MNT_FORCE | MNT_UPDATE))
#define MNT_OP_FLAGS (MNT_UPDATE|MNT_RELOAD|MNT_FORCE|MNT_GETARGS)
{ MNT_FORCE, 1, "force unmount or readonly change" }, \
if (mntflags & MNT_FORCE)
if (mp->mnt_flag & MNT_FORCE)
if (mntflags & MNT_FORCE)
if (error && (mp->mnt_flag & MNT_FORCE) == 0) {
if ((fs->fs_flags & FS_DOWAPBL) && (mp->mnt_flag & MNT_FORCE) == 0) {
(mp->mnt_flag & MNT_FORCE) ? "" : ", not mounting");
if ((mp->mnt_flag & MNT_FORCE) == 0) {
if ((mp->mnt_flag & MNT_FORCE) == 0 &&
(mp->mnt_flag & MNT_FORCE) == 0) {
(mp->mnt_flag & MNT_FORCE) ? "" : ", not mounting");
if ((mp->mnt_flag & MNT_FORCE) == 0) {
if (mntflags & MNT_FORCE)
error = ffs_wapbl_stop(mp, doforce && (mntflags & MNT_FORCE));
mp->mnt_flag |= MNT_FORCE;
mp->mnt_flag &= ~MNT_FORCE;
if (mp->mnt_flag & MNT_FORCE)
error = ffs_wapbl_stop(mp, mp->mnt_flag & MNT_FORCE);
(mp->mnt_flag & MNT_FORCE) ? "" :
(mp->mnt_flag & MNT_FORCE) ? "" : ", not mounting");
if ((mp->mnt_flag & MNT_FORCE) == 0) {
ffs_wapbl_stop(mp, MNT_FORCE);
if (mp->mnt_flag & MNT_FORCE) {
error = lfs_flushfiles(mp, mntflags & MNT_FORCE ? FORCECLOSE : 0);
if (mp->mnt_flag & MNT_FORCE)
if (mp->mnt_flag & MNT_FORCE) {
if (mp->mnt_flag & MNT_FORCE)
rump_sys_unmount("/mnt", MNT_FORCE);
flags |= MNT_FORCE;