aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
Diffstat (limited to 'sys')
-rw-r--r--sys/fs/fuse/fuse_device.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/fs/fuse/fuse_device.c b/sys/fs/fuse/fuse_device.c
index 8f5f9bfade961..203da2c6f7ba3 100644
--- a/sys/fs/fuse/fuse_device.c
+++ b/sys/fs/fuse/fuse_device.c
@@ -157,6 +157,13 @@ fdata_dtor(void *arg)
fuse_ticket_drop(tick);
}
fuse_lck_mtx_unlock(fdata->aw_mtx);
+
+ /* Cleanup unsent operations */
+ fuse_lck_mtx_lock(fdata->ms_mtx);
+ while ((tick = fuse_ms_pop(fdata))) {
+ fuse_ticket_drop(tick);
+ }
+ fuse_lck_mtx_unlock(fdata->ms_mtx);
FUSE_UNLOCK();
fdata_trydestroy(fdata);