nvme_dsm_range
struct nvme_dsm_range *r;
len = ranges * sizeof(struct nvme_dsm_range);
r = (struct nvme_dsm_range *)ctnio->kern_data_ptr;
struct nvme_dsm_range *r;
r = (struct nvme_dsm_range *)io->nvmeio.kern_data_ptr;
struct nvme_dsm_range *r;
r = (struct nvme_dsm_range *)io->nvmeio.kern_data_ptr;
struct nvme_dsm_range *dsm_range, *dsm_end;
struct nvme_dsm_range dsm[NVME_MAX_DSM_TRIM / sizeof(struct nvme_dsm_range)];
_Static_assert(NVME_MAX_DSM_TRIM % sizeof(struct nvme_dsm_range) == 0,
#define NDA_MAX_TRIM_ENTRIES (NVME_MAX_DSM_TRIM / sizeof(struct nvme_dsm_range))/* Number of DSM trims to use, max 256 */
num_ranges * sizeof(struct nvme_dsm_range), /* dxfer_len */
struct nvme_dsm_range *nvme_dsm_ranges = NULL;
data_length = ndesc * sizeof(struct nvme_dsm_range);
nvme_dsm_ranges = (struct nvme_dsm_range *)prp_page_info->prp_page;
_Static_assert(sizeof(struct nvme_dsm_range) == 16, "bad size for nvme_dsm_ranage");
struct nvme_dsm_range *dsm_range;
malloc(sizeof(struct nvme_dsm_range), M_NVME,
num_ranges * sizeof(struct nvme_dsm_range), M_NOWAIT, cb_fn,
struct nvme_dsm_range *dsm_range;
struct nvme_dsm_range *range = NULL;