---
name: "nvme_init_dsm_range"
section: "2"
platform: "linux"
package: "libnvme-dev"
version: "1.13-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/nvme_init_dsm_range"
---

# nvme\_init\_dsm\_range(2)

Constructs a data set range structure

## NAME

nvme\_init\_dsm\_range - Constructs a data set range structure

## SYNOPSIS

**void nvme\_init\_dsm\_range** **(struct nvme\_dsm\_range \*dsm** *,* **\_\_u32 \*ctx\_attrs** *,* **\_\_u32 \*llbas** *,* **\_\_u64 \*slbas** *,* **\_\_u16 nr\_ranges** *);*

## ARGUMENTS

- dsm

  DSM range array

- ctx\_attrs

  Array of context attributes

- llbas

  Array of length in logical blocks

- slbas

  Array of starting logical blocks

- nr\_ranges

  The size of the dsm arrays

## DESCRIPTION

Each array must be the same size of size 'nr\_ranges'. This is intended to be used with constructing a payload for **nvme\_dsm**.

## RETURN

The nvme command status if a response was received or -errno otherwise.
