---
name: "libnvme_transport_handle_set_submit_exit-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_transport_handle_set_submit_exit-libnvme3"
---

# libnvme\_transport\_handle\_set\_submit\_exit-libnvme3(2)

Install a submit-exit callback

## NAME

libnvme\_transport\_handle\_set\_submit\_exit - Install a submit-exit callback

## SYNOPSIS

**void libnvme\_transport\_handle\_set\_submit\_exit** **(struct libnvme\_transport\_handle \*hdl** *,* **void (\*submit\_exit)(struct libnvme\_transport\_handle \*hdl, struct libnvme\_passthru\_cmd \*cmd, int err, void \*user\_data)** *);*

## ARGUMENTS

- hdl

  Transport handle to configure

- submit\_exit

  Callback invoked after a passthrough command completes. The function receives the command, the completion status *err* (0 for success, a negative errno, or an NVMe status value), and the *user\_data* pointer returned earlier by the submit-entry callback. Implementations typically use this hook for logging, tracing, or freeing per-command state.

## DESCRIPTION

Installs a callback that is invoked when a passthrough command leaves the NVMe submission path. Passing NULL removes any previously installed callback.

## RETURN

None.
