summaryrefslogtreecommitdiffstats
path: root/module/zfs/arc.c
diff options
context:
space:
mode:
Diffstat (limited to 'module/zfs/arc.c')
-rw-r--r--module/zfs/arc.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/module/zfs/arc.c b/module/zfs/arc.c
index 19ad42d29..06c2d5fac 100644
--- a/module/zfs/arc.c
+++ b/module/zfs/arc.c
@@ -920,7 +920,7 @@ unsigned long l2arc_rebuild_blocks_min_l2size = 1024 * 1024 * 1024;
/* L2ARC persistence rebuild control routines. */
void l2arc_rebuild_vdev(vdev_t *vd, boolean_t reopen);
-static void l2arc_dev_rebuild_start(l2arc_dev_t *dev);
+static void l2arc_dev_rebuild_thread(void *arg);
static int l2arc_rebuild(l2arc_dev_t *dev);
/* L2ARC persistence read I/O routines. */
@@ -9500,8 +9500,7 @@ l2arc_spa_rebuild_start(spa_t *spa)
mutex_enter(&l2arc_rebuild_thr_lock);
if (dev->l2ad_rebuild && !dev->l2ad_rebuild_cancel) {
dev->l2ad_rebuild_began = B_TRUE;
- (void) thread_create(NULL, 0,
- (void (*)(void *))l2arc_dev_rebuild_start,
+ (void) thread_create(NULL, 0, l2arc_dev_rebuild_thread,
dev, 0, &p0, TS_RUN, minclsyspri);
}
mutex_exit(&l2arc_rebuild_thr_lock);
@@ -9512,8 +9511,10 @@ l2arc_spa_rebuild_start(spa_t *spa)
* Main entry point for L2ARC rebuilding.
*/
static void
-l2arc_dev_rebuild_start(l2arc_dev_t *dev)
+l2arc_dev_rebuild_thread(void *arg)
{
+ l2arc_dev_t *dev = arg;
+
VERIFY(!dev->l2ad_rebuild_cancel);
VERIFY(dev->l2ad_rebuild);
(void) l2arc_rebuild(dev);