Lines Matching refs:ctrl
136 nvme_log_disc_dup(nvme_ctrl_t *ctrl, const nvme_log_disc_t *src, in nvme_log_disc_dup() argument
142 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_disc_dup()
148 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_disc_dup()
156 return (nvme_ctrl_error(ctrl, NVME_ERR_NO_MEM, e, "failed to " in nvme_log_disc_dup()
163 return (nvme_ctrl_success(ctrl)); in nvme_log_disc_dup()
170 nvme_log_discover_validate(nvme_ctrl_t *ctrl, nvme_log_disc_scope_t scopes, in nvme_log_discover_validate() argument
183 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_FLAG, 0, "no log " in nvme_log_discover_validate()
188 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_FLAG, 0, in nvme_log_discover_validate()
194 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_FLAG, 0, in nvme_log_discover_validate()
209 nvme_log_discover_fetch_sup_logs(nvme_ctrl_t *ctrl) in nvme_log_discover_fetch_sup_logs() argument
226 ctrl->nc_sup_logs = NULL; in nvme_log_discover_fetch_sup_logs()
227 ctrl->nc_flags |= NVME_CTRL_F_SUP_LOGS_VALID; in nvme_log_discover_fetch_sup_logs()
229 data.vcd_vers = &ctrl->nc_vers; in nvme_log_discover_fetch_sup_logs()
230 data.vcd_id = &ctrl->nc_info; in nvme_log_discover_fetch_sup_logs()
239 (void) nvme_ctrl_error(ctrl, NVME_ERR_NO_MEM, e, "failed to " in nvme_log_discover_fetch_sup_logs()
245 if (!nvme_log_req_init(ctrl, &req)) { in nvme_log_discover_fetch_sup_logs()
256 ctrl->nc_sup_logs = sup; in nvme_log_discover_fetch_sup_logs()
268 ctrl->nc_flags |= NVME_CTRL_F_SUP_LOGS_FAILED; in nvme_log_discover_fetch_sup_logs()
269 if ((ctrl->nc_sup_logs_err = calloc(1, sizeof (nvme_err_data_t))) != in nvme_log_discover_fetch_sup_logs()
271 nvme_ctrl_err_save(ctrl, ctrl->nc_sup_logs_err); in nvme_log_discover_fetch_sup_logs()
273 (void) nvme_ctrl_success(ctrl); in nvme_log_discover_fetch_sup_logs()
289 nvme_ctrl_t *ctrl = iter->nli_ctrl; in nvme_log_discover_one() local
344 (ctrl->nc_sup_logs == NULL || in nvme_log_discover_one()
345 ctrl->nc_sup_logs->nl_logs[info->nlpi_lid].ns_lsupp) != 0) { in nvme_log_discover_one()
356 nvme_ctrl_t *ctrl = iter->nli_ctrl; in nvme_log_discover_step() local
384 if (ctrl->nc_vsd == NULL) { in nvme_log_discover_step()
389 while (iter->nli_cur_idx < ctrl->nc_vsd->nvd_nlogs) { in nvme_log_discover_step()
391 ctrl->nc_vsd->nvd_logs[iter->nli_cur_idx]; in nvme_log_discover_step()
405 nvme_log_discover_init(nvme_ctrl_t *ctrl, nvme_log_disc_scope_t scopes, in nvme_log_discover_init() argument
410 if (!nvme_log_discover_validate(ctrl, scopes, flags)) { in nvme_log_discover_init()
415 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_discover_init()
423 return (nvme_ctrl_error(ctrl, NVME_ERR_NO_MEM, e, "failed to " in nvme_log_discover_init()
428 if ((ctrl->nc_flags & NVME_CTRL_F_SUP_LOGS_VALID) == 0) { in nvme_log_discover_init()
429 nvme_log_discover_fetch_sup_logs(ctrl); in nvme_log_discover_init()
432 iter->nli_ctrl = ctrl; in nvme_log_discover_init()
436 return (nvme_ctrl_success(ctrl)); in nvme_log_discover_init()
444 nvme_log_discover(nvme_ctrl_t *ctrl, nvme_log_disc_scope_t scopes, in nvme_log_discover() argument
452 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_discover()
457 if (!nvme_log_discover_init(ctrl, scopes, flags, &iter)) { in nvme_log_discover()
462 if (!func(ctrl, disc, arg)) in nvme_log_discover()
471 return (nvme_ctrl_success(ctrl)); in nvme_log_discover()
489 nvme_log_req_init(nvme_ctrl_t *ctrl, nvme_log_req_t **reqp) in nvme_log_req_init() argument
494 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_req_init()
502 return (nvme_ctrl_error(ctrl, NVME_ERR_NO_MEM, e, "failed to " in nvme_log_req_init()
507 req->nlr_ctrl = ctrl; in nvme_log_req_init()
526 return (nvme_ctrl_success(ctrl)); in nvme_log_req_init()
530 nvme_log_req_init_by_disc(nvme_ctrl_t *ctrl, const nvme_log_disc_t *disc, in nvme_log_req_init_by_disc() argument
536 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_req_init_by_disc()
541 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_req_init_by_disc()
547 return (nvme_ctrl_error(ctrl, NVME_ERR_LOG_UNSUP_BY_DEV, 0, in nvme_log_req_init_by_disc()
556 return (nvme_ctrl_error(ctrl, NVME_ERR_NO_MEM, e, "failed to " in nvme_log_req_init_by_disc()
561 req->nlr_ctrl = ctrl; in nvme_log_req_init_by_disc()
597 nvme_vers_ctrl_atleast(ctrl, in nvme_log_req_init_by_disc()
621 return (nvme_ctrl_success(ctrl)); in nvme_log_req_init_by_disc()
633 nvme_log_req_init_by_name_cb(nvme_ctrl_t *ctrl, const nvme_log_disc_t *disc, in nvme_log_req_init_by_name_cb() argument
643 if (!nvme_log_req_init_by_disc(ctrl, disc, &init->nlia_req)) { in nvme_log_req_init_by_name_cb()
644 nvme_ctrl_err_save(ctrl, &init->nlia_err); in nvme_log_req_init_by_name_cb()
647 if (!nvme_log_disc_dup(ctrl, disc, init->nlia_discp)) { in nvme_log_req_init_by_name_cb()
648 nvme_ctrl_err_save(ctrl, &init->nlia_err); in nvme_log_req_init_by_name_cb()
658 nvme_log_req_init_by_name(nvme_ctrl_t *ctrl, const char *name, uint32_t flags, in nvme_log_req_init_by_name() argument
668 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_req_init_by_name()
674 return (nvme_ctrl_error(ctrl, NVME_ERR_BAD_PTR, 0, in nvme_log_req_init_by_name()
682 if (!nvme_log_discover(ctrl, NVME_LOG_SCOPE_CTRL | in nvme_log_req_init_by_name()
689 return (nvme_ctrl_error(ctrl, NVME_ERR_LOG_NAME_UNKNOWN, 0, in nvme_log_req_init_by_name()
699 nvme_ctrl_err_set(ctrl, &init.nlia_err); in nvme_log_req_init_by_name()
704 return (nvme_ctrl_success(ctrl)); in nvme_log_req_init_by_name()
857 nvme_ctrl_t *ctrl = req->nlr_ctrl; in nvme_log_req_set_nsid() local
861 return (nvme_ctrl_error(ctrl, NVME_ERR_NS_RANGE, 0, "the all " in nvme_log_req_set_nsid()
903 nvme_ctrl_t *ctrl = req->nlr_ctrl; in nvme_log_req_exec() local
907 return (nvme_field_miss_err(ctrl, nvme_log_fields, in nvme_log_req_exec()
925 if (ioctl(ctrl->nc_fd, NVME_IOC_GET_LOGPAGE, &log) != 0) { in nvme_log_req_exec()
927 return (nvme_ioctl_syserror(ctrl, e, "get log page")); in nvme_log_req_exec()
931 return (nvme_ioctl_error(ctrl, &log.nigl_common, in nvme_log_req_exec()
935 return (nvme_ctrl_success(ctrl)); in nvme_log_req_exec()