| nvme_init_read(9) | libnvme API manual | nvme_init_read(9) |
NAME
nvme_init_read - Initialize passthru command for a user read command
SYNOPSIS
void nvme_init_read (struct libnvme_passthru_cmd *cmd , __u32 nsid , __u64 slba , __u16 nlb , __u16 control , __u8 dsm , __u16 cev , void *data , __u32 data_len , void *metadata , __u32 metadata_len );
ARGUMENTS
- cmd
- Passthru command to use
- nsid
- Namespace ID
- slba
- Starting logical block
- nlb
- Number of logical blocks (0-based)
- control
- Upper 16 bits of cdw12
- dsm
- Data set management attributes (CETYPE is zero), see enum nvme_io_dsm_flags
- cev
- Command Extension Value (CETYPE is non-zero)
- data
- Pointer to user address of the data buffer
- data_len
- Length of user buffer, data, in bytes
- metadata
- Pointer to user address of the metadata buffer
- metadata_len
- Length of user buffer, metadata, in bytes
DESCRIPTION
Initializes the passthru command buffer for the Read command.
NOTE
Assumes a macro or separate function exists to translate the combined NLB/control/prinfo fields into cdw12/cdw13. This transformation assumes the parameters are used for a generic nvme_init_io wrapper.
| nvme_init_read | October 2026 |