svn commit: r353613 - vendor-sys/illumos/dist/uts/common/fs/zfs
Andriy Gapon
avg at FreeBSD.org
Wed Oct 16 06:35:00 UTC 2019
Author: avg
Date: Wed Oct 16 06:34:58 2019
New Revision: 353613
URL: https://svnweb.freebsd.org/changeset/base/353613
Log:
10731 zfs: NULL pointer errors
illumos/illumos-gate at dd328bf6d39366b8d7bde6a36114538fc14332dd
https://github.com/illumos/illumos-gate/commit/dd328bf6d39366b8d7bde6a36114538fc14332dd
https://www.illumos.org/issues/10731
Author: Toomas Soome <tsoome at me.com>
Modified:
vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_pool.c
vendor-sys/illumos/dist/uts/common/fs/zfs/sa.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zcp.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_get.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_global.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_iter.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_synctask.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_pool.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_pool.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_pool.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -1147,8 +1147,7 @@ int
dsl_pool_user_release(dsl_pool_t *dp, uint64_t dsobj, const char *tag,
dmu_tx_t *tx)
{
- return (dsl_pool_user_hold_rele_impl(dp, dsobj, tag, NULL,
- tx, B_FALSE));
+ return (dsl_pool_user_hold_rele_impl(dp, dsobj, tag, 0, tx, B_FALSE));
}
/*
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/sa.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/sa.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/sa.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -1577,12 +1577,12 @@ sa_attr_register_sync(sa_handle_t *hdl, dmu_tx_t *tx)
mutex_enter(&sa->sa_lock);
- if (!sa->sa_need_attr_registration || sa->sa_master_obj == NULL) {
+ if (!sa->sa_need_attr_registration || sa->sa_master_obj == 0) {
mutex_exit(&sa->sa_lock);
return;
}
- if (sa->sa_reg_attr_obj == NULL) {
+ if (sa->sa_reg_attr_obj == 0) {
sa->sa_reg_attr_obj = zap_create_link(hdl->sa_os,
DMU_OT_SA_ATTR_REGISTRATION,
sa->sa_master_obj, SA_REGISTRY, tx);
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zcp.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zcp.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zcp.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -608,23 +608,23 @@ zcp_dataset_hold_error(lua_State *state, dsl_pool_t *d
{
if (error == ENOENT) {
(void) zcp_argerror(state, 1, "no such dataset '%s'", dsname);
- return (NULL); /* not reached; zcp_argerror will longjmp */
+ return (0); /* not reached; zcp_argerror will longjmp */
} else if (error == EXDEV) {
(void) zcp_argerror(state, 1,
"dataset '%s' is not in the target pool '%s'",
dsname, spa_name(dp->dp_spa));
- return (NULL); /* not reached; zcp_argerror will longjmp */
+ return (0); /* not reached; zcp_argerror will longjmp */
} else if (error == EIO) {
(void) luaL_error(state,
"I/O error while accessing dataset '%s'", dsname);
- return (NULL); /* not reached; luaL_error will longjmp */
+ return (0); /* not reached; luaL_error will longjmp */
} else if (error != 0) {
(void) luaL_error(state,
"unexpected error %d while accessing dataset '%s'",
error, dsname);
- return (NULL); /* not reached; luaL_error will longjmp */
+ return (0); /* not reached; luaL_error will longjmp */
}
- return (NULL);
+ return (0);
}
/*
@@ -647,10 +647,10 @@ static zcp_lib_info_t zcp_debug_info = {
.func = zcp_debug,
.pargs = {
{ .za_name = "debug string", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
@@ -676,10 +676,10 @@ static zcp_lib_info_t zcp_exists_info = {
.func = zcp_exists,
.pargs = {
{ .za_name = "dataset", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_get.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_get.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_get.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -330,8 +330,7 @@ get_special_prop(lua_State *state, dsl_dataset_t *ds,
error = get_clones_stat_impl(ds, clones);
if (error == 0) {
/* push list to lua stack */
- VERIFY0(zcp_nvlist_to_lua(state, clones, NULL,
- NULL));
+ VERIFY0(zcp_nvlist_to_lua(state, clones, NULL, 0));
/* source */
(void) lua_pushnil(state);
}
@@ -792,10 +791,10 @@ static zcp_lib_info_t zcp_get_prop_info = {
.pargs = {
{ .za_name = "dataset", .za_lua_type = LUA_TSTRING},
{ .za_name = "property", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_global.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_global.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_global.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -68,7 +68,7 @@ static const zcp_errno_global_t errno_globals[] = {
{"ENOTSUP", ENOTSUP},
{"EDQUOT", EDQUOT},
{"ENAMETOOLONG", ENAMETOOLONG},
- {NULL, NULL}
+ {NULL, 0}
};
static void
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_iter.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_iter.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_iter.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -110,10 +110,10 @@ static zcp_list_info_t zcp_clones_list_info = {
.gc = NULL,
.pargs = {
{ .za_name = "snapshot", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
@@ -199,10 +199,10 @@ static zcp_list_info_t zcp_snapshots_list_info = {
.gc = NULL,
.pargs = {
{ .za_name = "filesystem | volume", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
@@ -300,10 +300,10 @@ static zcp_list_info_t zcp_children_list_info = {
.gc = NULL,
.pargs = {
{ .za_name = "filesystem | volume", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
@@ -381,10 +381,10 @@ static zcp_list_info_t zcp_props_list_info = {
.pargs = {
{ .za_name = "filesystem | snapshot | volume",
.za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
@@ -439,10 +439,10 @@ static zcp_list_info_t zcp_system_props_list_info = {
.func = zcp_system_props_list,
.pargs = {
{ .za_name = "dataset", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_synctask.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_synctask.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zcp_synctask.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -104,11 +104,11 @@ static zcp_synctask_info_t zcp_synctask_destroy_info =
.func = zcp_synctask_destroy,
.pargs = {
{.za_name = "filesystem | snapshot", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
{.za_name = "defer", .za_lua_type = LUA_TBOOLEAN},
- {NULL, NULL}
+ {NULL, 0}
},
.space_check = ZFS_SPACE_CHECK_DESTROY,
.blocks_modified = 0
@@ -157,10 +157,10 @@ static zcp_synctask_info_t zcp_synctask_promote_info =
.func = zcp_synctask_promote,
.pargs = {
{.za_name = "clone", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
},
.space_check = ZFS_SPACE_CHECK_RESERVED,
.blocks_modified = 3
@@ -196,10 +196,10 @@ static zcp_synctask_info_t zcp_synctask_rollback_info
.blocks_modified = 1,
.pargs = {
{.za_name = "filesystem", .za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
}
};
@@ -226,10 +226,10 @@ static zcp_synctask_info_t zcp_synctask_snapshot_info
.pargs = {
{.za_name = "filesystem at snapname | volume at snapname",
.za_lua_type = LUA_TSTRING},
- {NULL, NULL}
+ {NULL, 0}
},
.kwargs = {
- {NULL, NULL}
+ {NULL, 0}
},
.space_check = ZFS_SPACE_CHECK_NORMAL,
.blocks_modified = 3
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Wed Oct 16 06:26:51 2019 (r353612)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Wed Oct 16 06:34:58 2019 (r353613)
@@ -306,7 +306,7 @@ history_str_get(zfs_cmd_t *zc)
{
char *buf;
- if (zc->zc_history == NULL)
+ if (zc->zc_history == 0)
return (NULL);
buf = kmem_alloc(HIS_MAX_RECORD_LEN, KM_SLEEP);
@@ -2221,7 +2221,7 @@ zfs_ioc_objset_zplprops(zfs_cmd_t *zc)
* which we aren't supposed to do with a DS_MODE_USER
* hold, because it could be inconsistent.
*/
- if (zc->zc_nvlist_dst != NULL &&
+ if (zc->zc_nvlist_dst != 0 &&
!zc->zc_objset_stats.dds_inconsistent &&
dmu_objset_type(os) == DMU_OST_ZFS) {
nvlist_t *nv;
@@ -2778,7 +2778,7 @@ zfs_ioc_set_prop(zfs_cmd_t *zc)
if (error == 0)
error = zfs_set_prop_nvlist(zc->zc_name, source, nvl, errors);
- if (zc->zc_nvlist_dst != NULL && errors != NULL) {
+ if (zc->zc_nvlist_dst != 0 && errors != NULL) {
(void) put_nvlist(zc, errors);
}
@@ -2929,7 +2929,7 @@ zfs_ioc_pool_get_props(zfs_cmd_t *zc)
spa_close(spa, FTAG);
}
- if (error == 0 && zc->zc_nvlist_dst != NULL)
+ if (error == 0 && zc->zc_nvlist_dst != 0)
error = put_nvlist(zc, nvp);
else
error = SET_ERROR(EFAULT);
@@ -4401,7 +4401,7 @@ zfs_ioc_recv(zfs_cmd_t *zc)
tosnap = strchr(tofs, '@');
*tosnap++ = '\0';
- if (zc->zc_nvlist_src != NULL &&
+ if (zc->zc_nvlist_src != 0 &&
(error = get_nvlist(zc->zc_nvlist_src, zc->zc_nvlist_src_size,
zc->zc_iflags, &props)) != 0)
return (error);
@@ -4825,7 +4825,7 @@ zfs_ioc_clear(zfs_cmd_t *zc)
nvlist_t *policy;
nvlist_t *config = NULL;
- if (zc->zc_nvlist_src == NULL)
+ if (zc->zc_nvlist_src == 0)
return (SET_ERROR(EINVAL));
if ((error = get_nvlist(zc->zc_nvlist_src,
More information about the svn-src-vendor
mailing list