aboutsummaryrefslogtreecommitdiffstats
path: root/main/zfs-hardened/pax-rap-fixes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/zfs-hardened/pax-rap-fixes.patch')
-rw-r--r--main/zfs-hardened/pax-rap-fixes.patch590
1 files changed, 0 insertions, 590 deletions
diff --git a/main/zfs-hardened/pax-rap-fixes.patch b/main/zfs-hardened/pax-rap-fixes.patch
deleted file mode 100644
index a21cc3f4bc..0000000000
--- a/main/zfs-hardened/pax-rap-fixes.patch
+++ /dev/null
@@ -1,590 +0,0 @@
-diff --git a/include/sys/zfs_context.h b/include/sys/zfs_context.h
-index 4fe35342d..75bd560a2 100644
---- a/include/sys/zfs_context.h
-+++ b/include/sys/zfs_context.h
-@@ -242,7 +242,7 @@ typedef struct kthread {
- #define getcomm() "unknown"
- #define thread_exit zk_thread_exit
- #define thread_create(stk, stksize, func, arg, len, pp, state, pri) \
-- zk_thread_create(stk, stksize, (thread_func_t)func, arg, \
-+ zk_thread_create(stk, stksize, func, arg, \
- len, NULL, state, pri, PTHREAD_CREATE_DETACHED)
- #define thread_join(t) zk_thread_join(t)
- #define newproc(f, a, cid, pri, ctp, pid) (ENOSYS)
-diff --git a/include/sys/zio.h b/include/sys/zio.h
-index 4eaabc38c..a7c2346f1 100644
---- a/include/sys/zio.h
-+++ b/include/sys/zio.h
-@@ -522,8 +522,8 @@ extern void zio_shrink(zio_t *zio, uint64_t size);
-
- extern int zio_wait(zio_t *zio);
- extern void zio_nowait(zio_t *zio);
--extern void zio_execute(zio_t *zio);
--extern void zio_interrupt(zio_t *zio);
-+extern void zio_execute(void *zio);
-+extern void zio_interrupt(void *zio);
- extern void zio_delay_init(zio_t *zio);
- extern void zio_delay_interrupt(zio_t *zio);
-
-diff --git a/module/zfs/arc.c b/module/zfs/arc.c
-index a26e1156c..2a5aeb272 100644
---- a/module/zfs/arc.c
-+++ b/module/zfs/arc.c
-@@ -4214,7 +4214,7 @@ arc_kmem_reap_now(void)
- * using mutex_tryenter() from arc_reclaim_thread().
- */
- static void
--arc_reclaim_thread(void)
-+arc_reclaim_thread(void *_unused)
- {
- fstrans_cookie_t cookie = spl_fstrans_mark();
- hrtime_t growtime = 0;
-@@ -7521,7 +7521,7 @@ l2arc_write_buffers(spa_t *spa, l2arc_dev_t *dev, uint64_t target_sz)
- * heart of the L2ARC.
- */
- static void
--l2arc_feed_thread(void)
-+l2arc_feed_thread(void *_unused)
- {
- callb_cpr_t cpr;
- l2arc_dev_t *dev;
-diff --git a/module/zfs/dbuf.c b/module/zfs/dbuf.c
-index dc2c00495..9b322d0de 100644
---- a/module/zfs/dbuf.c
-+++ b/module/zfs/dbuf.c
-@@ -531,7 +531,7 @@ dbuf_evict_one(void)
- * out of the cache it is destroyed and becomes eligible for arc eviction.
- */
- static void
--dbuf_evict_thread(void)
-+dbuf_evict_thread(void *unused)
- {
- callb_cpr_t cpr;
-
-@@ -1977,7 +1977,6 @@ dmu_buf_will_fill(dmu_buf_t *db_fake, dmu_tx_t *tx)
- (void) dbuf_dirty(db, tx);
- }
-
--#pragma weak dmu_buf_fill_done = dbuf_fill_done
- /* ARGSUSED */
- void
- dbuf_fill_done(dmu_buf_impl_t *db, dmu_tx_t *tx)
-@@ -1999,6 +1998,12 @@ dbuf_fill_done(dmu_buf_impl_t *db, dmu_tx_t *tx)
- mutex_exit(&db->db_mtx);
- }
-
-+void __weak
-+dmu_buf_fill_done(dmu_buf_t *db, dmu_tx_t *tx)
-+{
-+ dbuf_fill_done((dmu_buf_impl_t *)db, tx);
-+}
-+
- void
- dmu_buf_write_embedded(dmu_buf_t *dbuf, void *data,
- bp_embedded_type_t etype, enum zio_compress comp,
-@@ -2821,7 +2826,6 @@ dbuf_rm_spill(dnode_t *dn, dmu_tx_t *tx)
- dbuf_free_range(dn, DMU_SPILL_BLKID, DMU_SPILL_BLKID, tx);
- }
-
--#pragma weak dmu_buf_add_ref = dbuf_add_ref
- void
- dbuf_add_ref(dmu_buf_impl_t *db, void *tag)
- {
-@@ -2829,6 +2833,14 @@ dbuf_add_ref(dmu_buf_impl_t *db, void *tag)
- VERIFY3S(holds, >, 1);
- }
-
-+void __weak
-+dmu_buf_add_ref(dmu_buf_t *_db, void* tag)
-+{
-+ dmu_buf_impl_t *db = (dmu_buf_impl_t *)_db;
-+ dbuf_add_ref(db, tag);
-+}
-+
-+
- #pragma weak dmu_buf_try_add_ref = dbuf_try_add_ref
- boolean_t
- dbuf_try_add_ref(dmu_buf_t *db_fake, objset_t *os, uint64_t obj, uint64_t blkid,
-@@ -2985,13 +2997,18 @@ dbuf_rele_and_unlock(dmu_buf_impl_t *db, void *tag)
-
- }
-
--#pragma weak dmu_buf_refcount = dbuf_refcount
- uint64_t
- dbuf_refcount(dmu_buf_impl_t *db)
- {
- return (refcount_count(&db->db_holds));
- }
-
-+uint64_t __weak
-+dmu_buf_refcount(dmu_buf_t *db)
-+{
-+ return dbuf_refcount((dmu_buf_impl_t *)db);
-+}
-+
- void *
- dmu_buf_replace_user(dmu_buf_t *db_fake, dmu_buf_user_t *old_user,
- dmu_buf_user_t *new_user)
-diff --git a/module/zfs/mmp.c b/module/zfs/mmp.c
-index 00478a39f..a6ee136e0 100644
---- a/module/zfs/mmp.c
-+++ b/module/zfs/mmp.c
-@@ -123,7 +123,7 @@ uint_t zfs_multihost_import_intervals = MMP_DEFAULT_IMPORT_INTERVALS;
- */
- uint_t zfs_multihost_fail_intervals = MMP_DEFAULT_FAIL_INTERVALS;
-
--static void mmp_thread(spa_t *spa);
-+static void mmp_thread(void *spa);
-
- void
- mmp_init(spa_t *spa)
-@@ -364,8 +364,9 @@ mmp_write_uberblock(spa_t *spa)
- }
-
- static void
--mmp_thread(spa_t *spa)
-+mmp_thread(void *arg)
- {
-+ spa_t *spa = arg;
- mmp_thread_t *mmp = &spa->spa_mmp;
- boolean_t last_spa_suspended = spa_suspended(spa);
- boolean_t last_spa_multihost = spa_multihost(spa);
-diff --git a/module/zfs/spa.c b/module/zfs/spa.c
-index f1f1444f1..3cb73e977 100644
---- a/module/zfs/spa.c
-+++ b/module/zfs/spa.c
-@@ -6068,8 +6068,9 @@ spa_async_autoexpand(spa_t *spa, vdev_t *vd)
- }
-
- static void
--spa_async_thread(spa_t *spa)
-+spa_async_thread(void *arg)
- {
-+ spa_t *spa = arg;
- int tasks, i;
-
- ASSERT(spa->spa_sync_on);
-diff --git a/module/zfs/txg.c b/module/zfs/txg.c
-index 65bd7f93a..87b68f576 100644
---- a/module/zfs/txg.c
-+++ b/module/zfs/txg.c
-@@ -108,8 +108,8 @@
- * now transition to the syncing state.
- */
-
--static void txg_sync_thread(dsl_pool_t *dp);
--static void txg_quiesce_thread(dsl_pool_t *dp);
-+static void txg_sync_thread(void *arg);
-+static void txg_quiesce_thread(void *arg);
-
- int zfs_txg_timeout = 5; /* max seconds worth of delta per txg */
-
-@@ -408,8 +408,9 @@ txg_quiesce(dsl_pool_t *dp, uint64_t txg)
- }
-
- static void
--txg_do_callbacks(list_t *cb_list)
-+txg_do_callbacks(void *_cb_list)
- {
-+ list_t *cb_list = _cb_list;
- dmu_tx_do_callbacks(cb_list, 0);
-
- list_destroy(cb_list);
-@@ -457,7 +458,7 @@ txg_dispatch_callbacks(dsl_pool_t *dp, uint64_t txg)
-
- list_move_tail(cb_list, &tc->tc_callbacks[g]);
-
-- (void) taskq_dispatch(tx->tx_commit_cb_taskq, (task_func_t *)
-+ (void) taskq_dispatch(tx->tx_commit_cb_taskq,
- txg_do_callbacks, cb_list, TQ_SLEEP);
- }
- }
-@@ -477,8 +478,9 @@ txg_wait_callbacks(dsl_pool_t *dp)
- }
-
- static void
--txg_sync_thread(dsl_pool_t *dp)
-+txg_sync_thread(void *arg)
- {
-+ dsl_pool_t *dp = arg;
- spa_t *spa = dp->dp_spa;
- tx_state_t *tx = &dp->dp_tx;
- callb_cpr_t cpr;
-@@ -561,8 +563,9 @@ txg_sync_thread(dsl_pool_t *dp)
- }
-
- static void
--txg_quiesce_thread(dsl_pool_t *dp)
-+txg_quiesce_thread(void *arg)
- {
-+ dsl_pool_t *dp = arg;
- tx_state_t *tx = &dp->dp_tx;
- callb_cpr_t cpr;
-
-diff --git a/module/zfs/zfs_replay.c b/module/zfs/zfs_replay.c
-index 30efb4b57..7a837f8a0 100644
---- a/module/zfs/zfs_replay.c
-+++ b/module/zfs/zfs_replay.c
-@@ -72,7 +72,7 @@ zfs_init_vattr(vattr_t *vap, uint64_t mask, uint64_t mode,
-
- /* ARGSUSED */
- static int
--zfs_replay_error(zfsvfs_t *zfsvfs, lr_t *lr, boolean_t byteswap)
-+zfs_replay_error(void *zsb, char *lr, boolean_t byteswap)
- {
- return (SET_ERROR(ENOTSUP));
- }
-@@ -265,9 +265,10 @@ zfs_replay_swap_attrs(lr_attr_t *lrattr)
- * as option FUID information.
- */
- static int
--zfs_replay_create_acl(zfsvfs_t *zfsvfs,
-- lr_acl_create_t *lracl, boolean_t byteswap)
-+zfs_replay_create_acl(void *_zfsvfs, char *_lracl, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_acl_create_t *lracl = (lr_acl_create_t *)_lracl;
- char *name = NULL; /* location determined later */
- lr_create_t *lr = (lr_create_t *)lracl;
- znode_t *dzp;
-@@ -413,8 +414,10 @@ bail:
- }
-
- static int
--zfs_replay_create(zfsvfs_t *zfsvfs, lr_create_t *lr, boolean_t byteswap)
-+zfs_replay_create(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_create_t *lr = (lr_create_t *)_lr;
- char *name = NULL; /* location determined later */
- char *link; /* symlink content follows name */
- znode_t *dzp;
-@@ -545,8 +548,10 @@ out:
- }
-
- static int
--zfs_replay_remove(zfsvfs_t *zfsvfs, lr_remove_t *lr, boolean_t byteswap)
-+zfs_replay_remove(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_remove_t *lr = (lr_remove_t *)_lr;
- char *name = (char *)(lr + 1); /* name follows lr_remove_t */
- znode_t *dzp;
- int error;
-@@ -578,8 +583,10 @@ zfs_replay_remove(zfsvfs_t *zfsvfs, lr_remove_t *lr, boolean_t byteswap)
- }
-
- static int
--zfs_replay_link(zfsvfs_t *zfsvfs, lr_link_t *lr, boolean_t byteswap)
-+zfs_replay_link(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_link_t *lr = (lr_link_t *)_lr;
- char *name = (char *)(lr + 1); /* name follows lr_link_t */
- znode_t *dzp, *zp;
- int error;
-@@ -608,8 +615,10 @@ zfs_replay_link(zfsvfs_t *zfsvfs, lr_link_t *lr, boolean_t byteswap)
- }
-
- static int
--zfs_replay_rename(zfsvfs_t *zfsvfs, lr_rename_t *lr, boolean_t byteswap)
-+zfs_replay_rename(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_rename_t *lr = (lr_rename_t *)_lr;
- char *sname = (char *)(lr + 1); /* sname and tname follow lr_rename_t */
- char *tname = sname + strlen(sname) + 1;
- znode_t *sdzp, *tdzp;
-@@ -639,8 +648,10 @@ zfs_replay_rename(zfsvfs_t *zfsvfs, lr_rename_t *lr, boolean_t byteswap)
- }
-
- static int
--zfs_replay_write(zfsvfs_t *zfsvfs, lr_write_t *lr, boolean_t byteswap)
-+zfs_replay_write(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_write_t *lr = (lr_write_t *)_lr;
- char *data = (char *)(lr + 1); /* data follows lr_write_t */
- znode_t *zp;
- int error, written;
-@@ -708,8 +719,10 @@ zfs_replay_write(zfsvfs_t *zfsvfs, lr_write_t *lr, boolean_t byteswap)
- * the file is grown.
- */
- static int
--zfs_replay_write2(zfsvfs_t *zfsvfs, lr_write_t *lr, boolean_t byteswap)
-+zfs_replay_write2(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_write_t *lr = (lr_write_t *)_lr;
- znode_t *zp;
- int error;
- uint64_t end;
-@@ -753,8 +766,10 @@ top:
- }
-
- static int
--zfs_replay_truncate(zfsvfs_t *zfsvfs, lr_truncate_t *lr, boolean_t byteswap)
-+zfs_replay_truncate(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_truncate_t *lr = (lr_truncate_t *)_lr;
- znode_t *zp;
- flock64_t fl;
- int error;
-@@ -780,8 +795,10 @@ zfs_replay_truncate(zfsvfs_t *zfsvfs, lr_truncate_t *lr, boolean_t byteswap)
- }
-
- static int
--zfs_replay_setattr(zfsvfs_t *zfsvfs, lr_setattr_t *lr, boolean_t byteswap)
-+zfs_replay_setattr(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_setattr_t *lr = (lr_setattr_t *)_lr;
- znode_t *zp;
- xvattr_t xva;
- vattr_t *vap = &xva.xva_vattr;
-@@ -834,8 +851,10 @@ zfs_replay_setattr(zfsvfs_t *zfsvfs, lr_setattr_t *lr, boolean_t byteswap)
- }
-
- static int
--zfs_replay_acl_v0(zfsvfs_t *zfsvfs, lr_acl_v0_t *lr, boolean_t byteswap)
-+zfs_replay_acl_v0(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_acl_v0_t *lr = (lr_acl_v0_t *)_lr;
- ace_t *ace = (ace_t *)(lr + 1); /* ace array follows lr_acl_t */
- vsecattr_t vsa;
- znode_t *zp;
-@@ -878,8 +897,10 @@ zfs_replay_acl_v0(zfsvfs_t *zfsvfs, lr_acl_v0_t *lr, boolean_t byteswap)
- *
- */
- static int
--zfs_replay_acl(zfsvfs_t *zfsvfs, lr_acl_t *lr, boolean_t byteswap)
-+zfs_replay_acl(void *_zfsvfs, char *_lr, boolean_t byteswap)
- {
-+ zfsvfs_t *zfsvfs = _zfsvfs;
-+ lr_acl_t *lr = (lr_acl_t *)_lr;
- ace_t *ace = (ace_t *)(lr + 1);
- vsecattr_t vsa;
- znode_t *zp;
-@@ -929,25 +950,25 @@ zfs_replay_acl(zfsvfs_t *zfsvfs, lr_acl_t *lr, boolean_t byteswap)
- * Callback vectors for replaying records
- */
- zil_replay_func_t zfs_replay_vector[TX_MAX_TYPE] = {
-- (zil_replay_func_t)zfs_replay_error, /* no such type */
-- (zil_replay_func_t)zfs_replay_create, /* TX_CREATE */
-- (zil_replay_func_t)zfs_replay_create, /* TX_MKDIR */
-- (zil_replay_func_t)zfs_replay_create, /* TX_MKXATTR */
-- (zil_replay_func_t)zfs_replay_create, /* TX_SYMLINK */
-- (zil_replay_func_t)zfs_replay_remove, /* TX_REMOVE */
-- (zil_replay_func_t)zfs_replay_remove, /* TX_RMDIR */
-- (zil_replay_func_t)zfs_replay_link, /* TX_LINK */
-- (zil_replay_func_t)zfs_replay_rename, /* TX_RENAME */
-- (zil_replay_func_t)zfs_replay_write, /* TX_WRITE */
-- (zil_replay_func_t)zfs_replay_truncate, /* TX_TRUNCATE */
-- (zil_replay_func_t)zfs_replay_setattr, /* TX_SETATTR */
-- (zil_replay_func_t)zfs_replay_acl_v0, /* TX_ACL_V0 */
-- (zil_replay_func_t)zfs_replay_acl, /* TX_ACL */
-- (zil_replay_func_t)zfs_replay_create_acl, /* TX_CREATE_ACL */
-- (zil_replay_func_t)zfs_replay_create, /* TX_CREATE_ATTR */
-- (zil_replay_func_t)zfs_replay_create_acl, /* TX_CREATE_ACL_ATTR */
-- (zil_replay_func_t)zfs_replay_create_acl, /* TX_MKDIR_ACL */
-- (zil_replay_func_t)zfs_replay_create, /* TX_MKDIR_ATTR */
-- (zil_replay_func_t)zfs_replay_create_acl, /* TX_MKDIR_ACL_ATTR */
-- (zil_replay_func_t)zfs_replay_write2, /* TX_WRITE2 */
-+ zfs_replay_error, /* no such type */
-+ zfs_replay_create, /* TX_CREATE */
-+ zfs_replay_create, /* TX_MKDIR */
-+ zfs_replay_create, /* TX_MKXATTR */
-+ zfs_replay_create, /* TX_SYMLINK */
-+ zfs_replay_remove, /* TX_REMOVE */
-+ zfs_replay_remove, /* TX_RMDIR */
-+ zfs_replay_link, /* TX_LINK */
-+ zfs_replay_rename, /* TX_RENAME */
-+ zfs_replay_write, /* TX_WRITE */
-+ zfs_replay_truncate, /* TX_TRUNCATE */
-+ zfs_replay_setattr, /* TX_SETATTR */
-+ zfs_replay_acl_v0, /* TX_ACL_V0 */
-+ zfs_replay_acl, /* TX_ACL */
-+ zfs_replay_create_acl, /* TX_CREATE_ACL */
-+ zfs_replay_create, /* TX_CREATE_ATTR */
-+ zfs_replay_create_acl, /* TX_CREATE_ACL_ATTR */
-+ zfs_replay_create_acl, /* TX_MKDIR_ACL */
-+ zfs_replay_create, /* TX_MKDIR_ATTR */
-+ zfs_replay_create_acl, /* TX_MKDIR_ACL_ATTR */
-+ zfs_replay_write2, /* TX_WRITE2 */
- };
-diff --git a/module/zfs/zfs_vnops.c b/module/zfs/zfs_vnops.c
-index d415e8024..128a96cc8 100644
---- a/module/zfs/zfs_vnops.c
-+++ b/module/zfs/zfs_vnops.c
-@@ -943,6 +943,13 @@ zfs_write(struct inode *ip, uio_t *uio, int ioflag, cred_t *cr)
- return (0);
- }
-
-+static void
-+iput_wrapper(void *_i)
-+{
-+ struct inode *i = _i;
-+ iput(i);
-+}
-+
- /*
- * Drop a reference on the passed inode asynchronously. This ensures
- * that the caller will never drop the last reference on an inode in
-@@ -959,7 +966,7 @@ zfs_iput_async(struct inode *ip)
-
- if (atomic_read(&ip->i_count) == 1)
- VERIFY(taskq_dispatch(dsl_pool_iput_taskq(dmu_objset_pool(os)),
-- (task_func_t *)iput, ip, TQ_SLEEP) != TASKQID_INVALID);
-+ iput_wrapper, ip, TQ_SLEEP) != TASKQID_INVALID);
- else
- iput(ip);
- }
-diff --git a/module/zfs/zil.c b/module/zfs/zil.c
-index 6a1f190f5..e9c71b5b0 100644
---- a/module/zfs/zil.c
-+++ b/module/zfs/zil.c
-@@ -1240,8 +1240,9 @@ zil_itx_destroy(itx_t *itx)
- * so no locks are needed.
- */
- static void
--zil_itxg_clean(itxs_t *itxs)
-+zil_itxg_clean(void *data)
- {
-+ itxs_t *itxs = data;
- itx_t *itx;
- list_t *list;
- avl_tree_t *t;
-@@ -1445,7 +1446,7 @@ zil_clean(zilog_t *zilog, uint64_t synced_txg)
- * created a bad performance problem.
- */
- if (taskq_dispatch(zilog->zl_clean_taskq,
-- (void (*)(void *))zil_itxg_clean, clean_me, TQ_NOSLEEP) == 0)
-+ zil_itxg_clean, clean_me, TQ_NOSLEEP) == 0)
- zil_itxg_clean(clean_me);
- }
-
-diff --git a/module/zfs/zio.c b/module/zfs/zio.c
-index 82e801e83..af20983ad 100644
---- a/module/zfs/zio.c
-+++ b/module/zfs/zio.c
-@@ -1512,7 +1512,7 @@ zio_taskq_dispatch(zio_t *zio, zio_taskq_type_t q, boolean_t cutinline)
- * to dispatch the zio to another taskq at the same time.
- */
- ASSERT(taskq_empty_ent(&zio->io_tqent));
-- spa_taskq_dispatch_ent(spa, t, q, (task_func_t *)zio_execute, zio,
-+ spa_taskq_dispatch_ent(spa, t, q, zio_execute, zio,
- flags, &zio->io_tqent);
- }
-
-@@ -1544,9 +1544,9 @@ zio_issue_async(zio_t *zio)
- }
-
- void
--zio_interrupt(zio_t *zio)
-+zio_interrupt(void *zio)
- {
-- zio_taskq_dispatch(zio, ZIO_TASKQ_INTERRUPT, B_FALSE);
-+ zio_taskq_dispatch((zio_t *)zio, ZIO_TASKQ_INTERRUPT, B_FALSE);
- }
-
- void
-@@ -1601,7 +1601,7 @@ zio_delay_interrupt(zio_t *zio)
- * OpenZFS's timeout_generic().
- */
- tid = taskq_dispatch_delay(system_taskq,
-- (task_func_t *)zio_interrupt,
-+ zio_interrupt,
- zio, TQ_NOSLEEP, expire_at_tick);
- if (tid == TASKQID_INVALID) {
- /*
-@@ -1643,8 +1643,9 @@ static zio_pipe_stage_t *zio_pipeline[];
- * it is externally visible.
- */
- void
--zio_execute(zio_t *zio)
-+zio_execute(void *_zio)
- {
-+ zio_t *zio = _zio;
- fstrans_cookie_t cookie;
-
- cookie = spl_fstrans_mark();
-@@ -1804,8 +1805,9 @@ zio_nowait(zio_t *zio)
- */
-
- static void
--zio_reexecute(zio_t *pio)
-+zio_reexecute(void *_pio)
- {
-+ zio_t *pio = _pio;
- zio_t *cio, *cio_next;
- int c, w;
- zio_link_t *zl = NULL;
-@@ -3974,7 +3976,7 @@ zio_done(zio_t *zio)
- ASSERT(taskq_empty_ent(&zio->io_tqent));
- spa_taskq_dispatch_ent(zio->io_spa,
- ZIO_TYPE_CLAIM, ZIO_TASKQ_ISSUE,
-- (task_func_t *)zio_reexecute, zio, 0,
-+ zio_reexecute, zio, 0,
- &zio->io_tqent);
- }
- return (ZIO_PIPELINE_STOP);
-diff --git a/module/zfs/zvol.c b/module/zfs/zvol.c
-index 254760220..01bcfd4d3 100644
---- a/module/zfs/zvol.c
-+++ b/module/zfs/zvol.c
-@@ -596,8 +596,10 @@ zvol_replay_truncate(zvol_state_t *zv, lr_truncate_t *lr, boolean_t byteswap)
- * after a system failure
- */
- static int
--zvol_replay_write(zvol_state_t *zv, lr_write_t *lr, boolean_t byteswap)
-+zvol_replay_write(void *_zv, char *_lr, boolean_t byteswap)
- {
-+ zvol_state_t *zv = _zv;
-+ lr_write_t *lr = (lr_write_t *)_lr;
- objset_t *os = zv->zv_objset;
- char *data = (char *)(lr + 1); /* data follows lr_write_t */
- uint64_t off = lr->lr_offset;
-@@ -622,7 +624,7 @@ zvol_replay_write(zvol_state_t *zv, lr_write_t *lr, boolean_t byteswap)
- }
-
- static int
--zvol_replay_err(zvol_state_t *zv, lr_t *lr, boolean_t byteswap)
-+zvol_replay_err(void *zv, char *lr, boolean_t byteswap)
- {
- return (SET_ERROR(ENOTSUP));
- }
-@@ -632,19 +634,19 @@ zvol_replay_err(zvol_state_t *zv, lr_t *lr, boolean_t byteswap)
- * Only TX_WRITE and TX_TRUNCATE are needed for zvol.
- */
- zil_replay_func_t zvol_replay_vector[TX_MAX_TYPE] = {
-- (zil_replay_func_t)zvol_replay_err, /* no such transaction type */
-- (zil_replay_func_t)zvol_replay_err, /* TX_CREATE */
-- (zil_replay_func_t)zvol_replay_err, /* TX_MKDIR */
-- (zil_replay_func_t)zvol_replay_err, /* TX_MKXATTR */
-- (zil_replay_func_t)zvol_replay_err, /* TX_SYMLINK */
-- (zil_replay_func_t)zvol_replay_err, /* TX_REMOVE */
-- (zil_replay_func_t)zvol_replay_err, /* TX_RMDIR */
-- (zil_replay_func_t)zvol_replay_err, /* TX_LINK */
-- (zil_replay_func_t)zvol_replay_err, /* TX_RENAME */
-- (zil_replay_func_t)zvol_replay_write, /* TX_WRITE */
-- (zil_replay_func_t)zvol_replay_truncate, /* TX_TRUNCATE */
-- (zil_replay_func_t)zvol_replay_err, /* TX_SETATTR */
-- (zil_replay_func_t)zvol_replay_err, /* TX_ACL */
-+ zvol_replay_err, /* no such transaction type */
-+ zvol_replay_err, /* TX_CREATE */
-+ zvol_replay_err, /* TX_MKDIR */
-+ zvol_replay_err, /* TX_MKXATTR */
-+ zvol_replay_err, /* TX_SYMLINK */
-+ zvol_replay_err, /* TX_REMOVE */
-+ zvol_replay_err, /* TX_RMDIR */
-+ zvol_replay_err, /* TX_LINK */
-+ zvol_replay_err, /* TX_RENAME */
-+ zvol_replay_write, /* TX_WRITE */
-+ zvol_replay_err, /* TX_TRUNCATE */
-+ zvol_replay_err, /* TX_SETATTR */
-+ zvol_replay_err, /* TX_ACL */
- };
-
- /*