diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2021-03-03 18:02:13 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2021-03-12 11:31:08 +0000 |
commit | f776c54cee81b4297b59ffe87a0f154e3924ee7f (patch) | |
tree | 8819fcee4a090ebfd4ad03c06e260584e8488ab9 /sys | |
parent | d7e5e374167fe98e998b80691824750f44bb050d (diff) | |
download | src-f776c54cee81b4297b59ffe87a0f154e3924ee7f.tar.gz src-f776c54cee81b4297b59ffe87a0f154e3924ee7f.zip |
ffs_mount: when remounting ro->rw and sbupdate failed, cleanup softdeps
Reviewed by: mckusick
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D29178
Diffstat (limited to 'sys')
-rw-r--r-- | sys/ufs/ffs/ffs_vfsops.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c index 273d6e497955..584a20adb54d 100644 --- a/sys/ufs/ffs/ffs_vfsops.c +++ b/sys/ufs/ffs/ffs_vfsops.c @@ -645,6 +645,8 @@ ffs_mount(struct mount *mp) fs->fs_clean = 0; if ((error = ffs_sbupdate(ump, MNT_WAIT, 0)) != 0) { fs->fs_ronly = 1; + if ((fs->fs_flags & FS_DOSOFTDEP) != 0) + softdep_unmount(mp); MNT_ILOCK(mp); mp->mnt_flag |= saved_mnt_flag; MNT_IUNLOCK(mp); |