---
name: "libnvme_exec_io_passthru-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_exec_io_passthru-libnvme3"
---

# libnvme\_exec\_io\_passthru-libnvme3(2)

Submit an IO passthru command and wait

## NAME

libnvme\_exec\_io\_passthru - Submit an IO passthru command and wait

## SYNOPSIS

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

## ARGUMENTS

- hdl

  Transport handle

- cmd

  The nvme IO command to send

## DESCRIPTION

Synchronous command execution. Note: when io\_uring is enabled, this shares the async queue. Avoid mixing this with direct async API usage on the same handle. For batching, use the async API exclusively.

## RETURN

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