---
name: "libnvme_mi_mi_read_mi_data_ctrl_list-libnvme3"
section: "2"
platform: "linux"
package: "nvme-cli"
version: "3.2-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/libnvme_mi_mi_read_mi_data_ctrl_list-libnvme3"
---

# libnvme\_mi\_mi\_read\_mi\_data\_ctrl\_list-libnvme3(2)

Perform a Read MI Data Structure command, retrieving the list of attached controllers.

## NAME

libnvme\_mi\_mi\_read\_mi\_data\_ctrl\_list - Perform a Read MI Data Structure command, retrieving the list of attached controllers.

## SYNOPSIS

**int libnvme\_mi\_mi\_read\_mi\_data\_ctrl\_list** **(struct libnvme\_mi\_ep \*ep** *,* **\_\_u8 start\_ctrlid** *,* **struct nvme\_ctrl\_list \*list** *);*

## ARGUMENTS

- ep

  endpoint for MI communication

- start\_ctrlid

  starting controller ID

- list

  controller list to populate

## DESCRIPTION

Retrieves the list of attached controllers, with IDs greater than or equal to *start\_ctrlid*.

See *struct nvme\_ctrl\_list*.

## RETURN

The nvme command status if a response was received (see *enum nvme\_status\_field*) or negative error code otherwise.
