Changeset View
Changeset View
Standalone View
Standalone View
sbin/nvmecontrol/format.c
Show First 20 Lines • Show All 166 Lines • ▼ Show 20 Lines | if (mset < 0) | ||||
mset = 0; | mset = 0; | ||||
if (pi < 0) | if (pi < 0) | ||||
pi = 0; | pi = 0; | ||||
if (pil < 0) | if (pil < 0) | ||||
pil = 0; | pil = 0; | ||||
} | } | ||||
memset(&pt, 0, sizeof(pt)); | memset(&pt, 0, sizeof(pt)); | ||||
pt.cmd.opc_fuse = NVME_CMD_SET_OPC(NVME_OPC_FORMAT_NVM); | pt.cmd.opc = NVME_OPC_FORMAT_NVM; | ||||
pt.cmd.nsid = htole32(nsid); | pt.cmd.nsid = htole32(nsid); | ||||
pt.cmd.cdw10 = htole32((ses << 9) + (pil << 8) + (pi << 5) + | pt.cmd.cdw10 = htole32((ses << 9) + (pil << 8) + (pi << 5) + | ||||
(mset << 4) + lbaf); | (mset << 4) + lbaf); | ||||
if (ioctl(fd, NVME_PASSTHROUGH_CMD, &pt) < 0) | if (ioctl(fd, NVME_PASSTHROUGH_CMD, &pt) < 0) | ||||
err(1, "format request failed"); | err(1, "format request failed"); | ||||
if (nvme_completion_is_error(&pt.cpl)) | if (nvme_completion_is_error(&pt.cpl)) | ||||
errx(1, "format request returned error"); | errx(1, "format request returned error"); | ||||
close(fd); | close(fd); | ||||
exit(0); | exit(0); | ||||
} | } |