summaryrefslogtreecommitdiff
path: root/src/kernel/vfs/request.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/vfs/request.c')
-rw-r--r--src/kernel/vfs/request.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/kernel/vfs/request.c b/src/kernel/vfs/request.c
index a129f2e..2288de5 100644
--- a/src/kernel/vfs/request.c
+++ b/src/kernel/vfs/request.c
@@ -155,7 +155,9 @@ void vfs_backend_refdown(struct vfs_backend *b) {
assert(b);
assert(b->refcount > 0);
if (--(b->refcount) > 0) return;
-
assert(!b->queue);
+ if (!b->is_user && b->kern.cleanup) {
+ b->kern.cleanup(b);
+ }
kfree(b);
}