nvme\_init\_zns\_append(9) libnvme API manual nvme\_init\_zns\_append(9)

# [NAME](#NAME)

nvme\_init\_zns\_append - Initialize passthru command to append data to a zone

# [SYNOPSIS](#SYNOPSIS)

**void nvme\_init\_zns\_append** **(struct libnvme\_passthru\_cmd \*cmd ,** **\_\_u32 nsid ,** **\_\_u64 zslba ,** **\_\_u16 nlb ,** **\_\_u16 control ,** **\_\_u16 cev ,** **\_\_u16 dspec ,** **void \*data ,** **\_\_u32 data\_len ,** **void \*metadata ,** **\_\_u32 metadata\_len );**

# [ARGUMENTS](#ARGUMENTS)

[cmd](#cmd)

Passthru command to use

[nsid](#nsid)

Namespace ID

[zslba](#zslba)

Zone start logical block address

[nlb](#nlb)

Number of logical blocks

[control](#control)

Upper 16 bits of cdw12

[cev](#cev)

Command Extension Value

[dspec](#dspec)

Directive Specific

[data](#data)

Userspace address of the data buffer

[data\_len](#data_len)

Length of *data*

[metadata](#metadata)

Userspace address of the metadata buffer

[metadata\_len](#metadata_len)

Length of *metadata*

# [DESCRIPTION](#DESCRIPTION)

Initializes the passthru command buffer for the ZNS Append command.

nvme\_init\_zns\_append October 2026

---

Document: nvme_init_zns_append-libnvme3(2) from nvme-cli 3.2-r0 (Chainguard OS)
Source: https://github.com/linux-nvme/nvme-cli
