logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

nvme_mi_mi_xfer - Raw mi transfer interface.

Arguments

ep endpoint to send the MI command to mi_req request data req_data_size size of request data payload mi_resp buffer for response data resp_data_size size of response data buffer, updated to received size

Description

Performs an arbitrary NVMe MI command, using the provided request data, in mi_req. The size of the request data *payload* is specified in req_data_size - this does not include the standard header length (so a header-only request would have a size of 0). Note that the Management Request Doublewords are considered part of the header data. On success, response data is stored in mi_resp, which has an optional appended payload buffer of resp_data_size bytes. The actual payload size transferred will be stored in resp_data_size. This size does not include the MI response header, so 0 represents no payload. See: structnvme_mi_mi_req_hdr and structnvme_mi_mi_resp_hdr.

Name

nvme_mi_mi_xfer - Raw mi transfer interface.

Return

The nvme command status if a response was received (see enumnvme_status_field) or -1 with errno set otherwise.. August 2025 nvme_mi_mi_xfer nvme_mi_mi_xfer(2)

Synopsis

intnvme_mi_mi_xfer(nvme_mi_ep_tep,structnvme_mi_mi_req_hdr*mi_req,size_treq_data_size,structnvme_mi_mi_resp_hdr*mi_resp,size_t*resp_data_size);

See Also