err = nvme_zns_identify_ctrl(fd, &ctrl);
if (!err)
nvme_show_zns_id_ctrl(&ctrl, flags);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns identify controller");
close_fd:
close(fd);
return err;
err = nvme_zns_identify_ns(fd, cfg.namespace_id, &ns);
if (!err)
nvme_show_zns_id_ns(&ns, &id_ns, flags);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns identify namespace");
close_fd:
close(fd);
return err;
if (!err)
printf("%s: Success, action:%d zone:%"PRIx64" nsid:%d\n", command,
zsa, (uint64_t)cfg.zslba, cfg.namespace_id);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror(desc);
free:
free(command);
close_fd:
int err;
err = nvme_identify_ns(fd, nsid, false, &id_ns);
- if (err) {
+ if (err > 0){
nvme_show_status(err);
return err;
}
+ else if (err < 0){
+ perror("identify namespace");
+ return err;
+ }
err = nvme_zns_identify_ns(fd, nsid, &ns);
- if (err) {
+ if (err > 0){
nvme_show_status(err);
return err;
}
+ else if (err < 0){
+ perror("zns identify namespace");
+ return err;
+ }
lbaf = id_ns.flbas & NVME_NS_FLBAS_LBA_MASK;
return ns.lbafe[lbaf].zdes << 6;
if (!err)
printf("zone-mgmt-send: Success, action:%d zone:%"PRIx64" nsid:%d\n",
cfg.zsa, (uint64_t)cfg.zslba, cfg.namespace_id);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns zone-mgmt-send");
close_ffd:
if (cfg.file)
if (!err)
printf("set-zone-desc: Success, zone:%"PRIx64" nsid:%d\n",
(uint64_t)cfg.zslba, cfg.namespace_id);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns set-zone-desc");
close_ffd:
if (cfg.file)
close(ffd);
if (!err)
printf("zone-mgmt-recv: Success, action:%d zone:%"PRIx64" nsid:%d\n",
cfg.zra, (uint64_t)cfg.zslba, cfg.namespace_id);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns zone-mgmt-recv");
if (data)
free(data);
if (!err)
nvme_show_zns_report_zones(report, cfg.num_descs, zdes,
report_size, flags);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns report-zones");
nvme_free(report, huge);
close_fd:
if (!err)
printf("Success appended data to LBA %"PRIx64"\n", (uint64_t)result);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns zone-append");
free_meta:
free(mbuf);
cfg.rae, sizeof(log), &log);
if (!err)
nvme_show_zns_changed(&log, flags);
- else
+ else if (err > 0)
nvme_show_status(err);
+ else
+ perror("zns changed-zone-list");
close_fd:
close(fd);