---
name: "libnvme_mi_aem_config-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_aem_config-libnvme3"
---

# libnvme\_mi\_aem\_config-libnvme3(2)

Provided for libnvme\_mi\_aem\_enable

## NAME

struct libnvme\_mi\_aem\_config - Provided for libnvme\_mi\_aem\_enable

## SYNOPSIS

struct libnvme\_mi\_aem\_config {\
     **enum libnvme\_mi\_aem\_handler\_next\_action (\*aem\_handler)(struct libnvme\_mi\_ep \*ep,size\_t num\_events, void \*userdata);**\
     **struct libnvme\_mi\_aem\_enabled\_map enabled\_map;**\
     **bool envfa;**\
     **bool empfa;**\
     **bool encfa;**\
     **\_\_u8 aemd;**\
     **\_\_u8 aerd;**\
 };\

## Members

- aem\_handler

  Callback function for application processing of events

- enabled\_map

  Map indicating which AE should be enabled on the endpoint

- envfa

  Enable SR-IOV virtual functions AE

- empfa

  Enable SR-IOV physical functions AE

- encfa

  Enable PCIe functions AE

- aemd

  AEM Delay (time in seconds from when event happens to AEM being batched and sent)

- aerd

  AEM Retry Delay (time in 100s of ms between AEM retries from the endpoint)

## Description

Application callbacks for libnvme\_mi\_aem\_process will be able to call libnvme\_mi\_aem\_get\_next\_event which will return a pointer to such an identifier for the next event the application should parse
