aboutsummaryrefslogtreecommitdiff
path: root/sys/fs/fuse/fuse_vfsops.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/fs/fuse/fuse_vfsops.c')
-rw-r--r--sys/fs/fuse/fuse_vfsops.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/fs/fuse/fuse_vfsops.c b/sys/fs/fuse/fuse_vfsops.c
index 64d7ccc7600c..f64b69164e5f 100644
--- a/sys/fs/fuse/fuse_vfsops.c
+++ b/sys/fs/fuse/fuse_vfsops.c
@@ -493,11 +493,13 @@ fuse_vfsop_unmount(struct mount *mp, int mntflags)
if (fdata_get_dead(data)) {
goto alreadydead;
}
- fdisp_init(&fdi, 0);
- fdisp_make(&fdi, FUSE_DESTROY, mp, 0, td, NULL);
+ if (fsess_isimpl(mp, FUSE_DESTROY)) {
+ fdisp_init(&fdi, 0);
+ fdisp_make(&fdi, FUSE_DESTROY, mp, 0, td, NULL);
- err = fdisp_wait_answ(&fdi);
- fdisp_destroy(&fdi);
+ (void)fdisp_wait_answ(&fdi);
+ fdisp_destroy(&fdi);
+ }
fdata_set_dead(data);