Changeset View
Changeset View
Standalone View
Standalone View
sys/contrib/openzfs/module/zfs/zfs_ioctl.c
Show First 20 Lines • Show All 7,412 Lines • ▼ Show 20 Lines | |||||
{ | { | ||||
int error, cmd; | int error, cmd; | ||||
const zfs_ioc_vec_t *vec; | const zfs_ioc_vec_t *vec; | ||||
char *saved_poolname = NULL; | char *saved_poolname = NULL; | ||||
uint64_t max_nvlist_src_size; | uint64_t max_nvlist_src_size; | ||||
size_t saved_poolname_len = 0; | size_t saved_poolname_len = 0; | ||||
nvlist_t *innvl = NULL; | nvlist_t *innvl = NULL; | ||||
fstrans_cookie_t cookie; | fstrans_cookie_t cookie; | ||||
hrtime_t start_time = gethrtime(); | |||||
cmd = vecnum; | cmd = vecnum; | ||||
error = 0; | error = 0; | ||||
if (vecnum >= sizeof (zfs_ioc_vec) / sizeof (zfs_ioc_vec[0])) | if (vecnum >= sizeof (zfs_ioc_vec) / sizeof (zfs_ioc_vec[0])) | ||||
return (SET_ERROR(ZFS_ERR_IOC_CMD_UNAVAIL)); | return (SET_ERROR(ZFS_ERR_IOC_CMD_UNAVAIL)); | ||||
vec = &zfs_ioc_vec[vecnum]; | vec = &zfs_ioc_vec[vecnum]; | ||||
▲ Show 20 Lines • Show All 142 Lines • ▼ Show 20 Lines | if ((error == 0 || | ||||
fnvlist_add_nvlist(lognv, | fnvlist_add_nvlist(lognv, | ||||
ZPOOL_HIST_OUTPUT_NVL, outnvl); | ZPOOL_HIST_OUTPUT_NVL, outnvl); | ||||
} | } | ||||
} | } | ||||
if (error != 0) { | if (error != 0) { | ||||
fnvlist_add_int64(lognv, ZPOOL_HIST_ERRNO, | fnvlist_add_int64(lognv, ZPOOL_HIST_ERRNO, | ||||
error); | error); | ||||
} | } | ||||
fnvlist_add_int64(lognv, ZPOOL_HIST_ELAPSED_NS, | |||||
gethrtime() - start_time); | |||||
(void) spa_history_log_nvl(spa, lognv); | (void) spa_history_log_nvl(spa, lognv); | ||||
spa_close(spa, FTAG); | spa_close(spa, FTAG); | ||||
} | } | ||||
fnvlist_free(lognv); | fnvlist_free(lognv); | ||||
if (!nvlist_empty(outnvl) || zc->zc_nvlist_dst_size != 0) { | if (!nvlist_empty(outnvl) || zc->zc_nvlist_dst_size != 0) { | ||||
int smusherror = 0; | int smusherror = 0; | ||||
if (vec->zvec_smush_outnvlist) { | if (vec->zvec_smush_outnvlist) { | ||||
▲ Show 20 Lines • Show All 99 Lines • Show Last 20 Lines |