libnvme\_submit\_io\_passthru(9) libnvme API manual libnvme\_submit\_io\_passthru(9)

# [NAME](#NAME)

libnvme\_submit\_io\_passthru - Queue IO passthru command

# [SYNOPSIS](#SYNOPSIS)

**int libnvme\_submit\_io\_passthru** **(struct libnvme\_transport\_handle \*hdl ,** **struct libnvme\_passthru\_cmd \*cmd ,** **void \*cookie );**

# [ARGUMENTS](#ARGUMENTS)

[hdl](#hdl)

Transport handle

[cmd](#cmd)

The nvme IO command to send

[cookie](#cookie)

User-defined opaque value returned at completion

# [DESCRIPTION](#DESCRIPTION)

Queues *cmd* for asynchronous execution. Completion is reported via **libnvme\_reap\_passthru**.

# [RETURN](#RETURN)

0 on successful queueing, negative error code otherwise.

libnvme\_submit\_io\_passthru September 2026

---

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