Page MenuHomeFreeBSD

D49169.diff
No OneTemporary

D49169.diff

diff --git a/sys/contrib/openzfs/module/os/freebsd/spl/spl_vfs.c b/sys/contrib/openzfs/module/os/freebsd/spl/spl_vfs.c
--- a/sys/contrib/openzfs/module/os/freebsd/spl/spl_vfs.c
+++ b/sys/contrib/openzfs/module/os/freebsd/spl/spl_vfs.c
@@ -256,6 +256,12 @@
return (0);
}
+static void
+vrele_task_runner(void *vp)
+{
+ vrele((vnode_t *)vp);
+}
+
/*
* Like vn_rele() except if we are going to call VOP_INACTIVE() then do it
* asynchronously using a taskq. This can avoid deadlocks caused by re-entering
@@ -272,6 +278,7 @@
VERIFY3U(vp->v_usecount, >, 0);
if (refcount_release_if_not_last(&vp->v_usecount))
return;
- VERIFY3U(taskq_dispatch((taskq_t *)taskq,
- (task_func_t *)vrele, vp, TQ_SLEEP), !=, 0);
+ VERIFY3U(taskq_dispatch((taskq_t *)taskq, vrele_task_runner, vp,
+ TQ_SLEEP),
+ !=, 0);
}

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 27, 7:16 PM (16 h, 16 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16906655
Default Alt Text
D49169.diff (827 B)

Event Timeline