mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-26 12:12:13 +03:00
A few fixes of callback typecasting (for the upcoming ClangCFI)
* zio: avoid callback typecasting * zil: avoid zil_itxg_clean() callback typecasting * zpl: decouple zpl_readpage() into two separate callbacks * nvpair: explicitly declare callbacks for xdr_array() * linux/zfs_nvops: don't use external iput() as a callback * zcp_synctask: don't use fnvlist_free() as a callback * zvol: don't use ops->zv_free() as a callback for taskq_dispatch() Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Mark Maybee <mark.maybee@delphix.com> Signed-off-by: Alexander Lobakin <alobakin@pm.me> Closes #12260
This commit is contained in:
+3
-2
@@ -1822,12 +1822,13 @@ zil_itx_destroy(itx_t *itx)
|
||||
* so no locks are needed.
|
||||
*/
|
||||
static void
|
||||
zil_itxg_clean(itxs_t *itxs)
|
||||
zil_itxg_clean(void *arg)
|
||||
{
|
||||
itx_t *itx;
|
||||
list_t *list;
|
||||
avl_tree_t *t;
|
||||
void *cookie;
|
||||
itxs_t *itxs = arg;
|
||||
itx_async_node_t *ian;
|
||||
|
||||
list = &itxs->i_sync_list;
|
||||
@@ -2047,7 +2048,7 @@ zil_clean(zilog_t *zilog, uint64_t synced_txg)
|
||||
ASSERT3P(zilog->zl_dmu_pool, !=, NULL);
|
||||
ASSERT3P(zilog->zl_dmu_pool->dp_zil_clean_taskq, !=, NULL);
|
||||
taskqid_t id = taskq_dispatch(zilog->zl_dmu_pool->dp_zil_clean_taskq,
|
||||
(void (*)(void *))zil_itxg_clean, clean_me, TQ_NOSLEEP);
|
||||
zil_itxg_clean, clean_me, TQ_NOSLEEP);
|
||||
if (id == TASKQID_INVALID)
|
||||
zil_itxg_clean(clean_me);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user