libnvme(2)
π libnvme(2) β API Manual π
okay bestie, sit DOWN. we're doing the manual page for β¨libnvmeβ¨, and this particular page is all about enum nvme_id_ctrl_oncs. no cap, it's a good one.
πΈ NAME πΈ
enum nvme_id_ctrl_oncs β this field is giving "here's everything I can do" energy: it indicates the optional NVM commands and features supported by the controller. π
β¨ SYNOPSIS β¨
enum nvme_id_ctrl_oncs {
NVME_CTRL_ONCS_COMPARE ,
NVME_CTRL_ONCS_WRITE_UNCORRECTABLE ,
NVME_CTRL_ONCS_DSM ,
NVME_CTRL_ONCS_WRITE_ZEROES ,
NVME_CTRL_ONCS_SAVE_FEATURES ,
NVME_CTRL_ONCS_RESERVATIONS ,
NVME_CTRL_ONCS_TIMESTAMP ,
NVME_CTRL_ONCS_VERIFY ,
NVME_CTRL_ONCS_COPY ,
NVME_CTRL_ONCS_COPY_SINGLE_ATOMICITY ,
NVME_CTRL_ONCS_ALL_FAST_COPY ,
NVME_CTRL_ONCS_WRITE_ZEROES_DEALLOCATE ,
NVME_CTRL_ONCS_NAMESPACE_ZEROES
};
π«Ά Constants π«Ά
okay so every single one of these is a "if set, thenβ¦" situation. like, the bit being flipped is the whole personality. let's go one by one, bestie, no skipping. π
NVME_CTRL_ONCS_COMPAREβ if set, then the controller supports the Compare command. iconic behavior fr fr.NVME_CTRL_ONCS_WRITE_UNCORRECTABLEβ if set, then the controller supports the Write Uncorrectable command. the name is lowkey dramatic but it's just a capability bit, we move.NVME_CTRL_ONCS_DSMβ if set, then the controller supports the Dataset Management command. slay.NVME_CTRL_ONCS_WRITE_ZEROESβ if set, then the controller supports the Write Zeroes command. zeros, but make it a feature. πNVME_CTRL_ONCS_SAVE_FEATURESβ if set, then the controller supports the Save field set to a non-zero value in the Set Features command and the Select field set to a non-zero value in the Get Features command. yes, both of those, exactly like that. memorize it. β¨NVME_CTRL_ONCS_RESERVATIONSβ if set, then the controller supports reservations. it said "this seat's taken," periodt.NVME_CTRL_ONCS_TIMESTAMPβ if set, then the controller supports the Timestamp feature. it knows what time it is, literally. πNVME_CTRL_ONCS_VERIFYβ if set, then the controller supports the Verify command. trust but verify, am i right?NVME_CTRL_ONCS_COPYβ if set, then the controller supports the copy command. (lowercase "copy" here, iykyk β copying it exactly as written, don't come for me π)NVME_CTRL_ONCS_COPY_SINGLE_ATOMICITYβ if set, then the write portion of a Copy command is performed as a single write command to which the same atomicity requirements that apply to a write command apply. all-or-nothing, no half-sends, main character energy only. π₯NVME_CTRL_ONCS_ALL_FAST_COPYβ if set, then all copy operations for the Copy command are fast copy operations. not "some," not "most" β ALL. we love a commitment. π¨NVME_CTRL_ONCS_WRITE_ZEROES_DEALLOCATEβ ifMAXWZDbit set, then the maximum data size for Write Zeroes command depends on the value of theDeallocatebit in the Write Zeroes command and the value in theWZDSLfield in the I/O Command Set specific Identify Controller data structure. okay this one has lore, read it twice bestie, it's doing a lot. π§NVME_CTRL_ONCS_NAMESPACE_ZEROESβ ifNSZSbit set, then the controller supports the Namespace Zeroes (NSZ) bit in the NVM Command Set Write Zeroes command. namespace zeroes, very demure, very mindful. π
real talk: every one of these is conditional. no bit, no feature. don't be out here assuming a controller can do the thing just because the constant exists β check the field first, bestie. π
and that's the whole page!! you understood it, i'm obsessed, goodbye. π β¨
anyway, cute little sign-off: this was enum nvme_id_ctrl_oncs from the libnvme(2) API Manual, dated July 2026. read it, screenshot it, send it to the group chat. π¦πΈπ«Ά
π¦ where this page comes from
- ubuntu stonking: libnvme-dev 1.16.2-1build1 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms