nvme\_init\_ctrl\_list(9) libnvme API manual nvme\_init\_ctrl\_list(9)

# [NAME](#NAME)

nvme\_init\_ctrl\_list - Initialize an nvme\_ctrl\_list structure from an array.

# [SYNOPSIS](#SYNOPSIS)

**void nvme\_init\_ctrl\_list** **(struct nvme\_ctrl\_list \*cntlist ,** **\_\_u16 num\_ctrls ,** **\_\_u16 \*ctrlist );**

# [ARGUMENTS](#ARGUMENTS)

[cntlist](#cntlist)

The controller list structure to initialize

[num\_ctrls](#num_ctrls)

The number of controllers in the array, *ctrlist*.

[ctrlist](#ctrlist)

An array of controller identifiers in CPU native endian.

# [DESCRIPTION](#DESCRIPTION)

This is intended to be used with any command that takes a controller list argument. See **nvme\_ns\_attach\_ctrls** and **nvme\_ns\_detach**.

nvme\_init\_ctrl\_list October 2026

---

Document: nvme_init_ctrl_list-libnvme3(2) from nvme-cli 3.2-r0 (Chainguard OS)
Source: https://github.com/linux-nvme/nvme-cli
