LBLK-WRITE-READ-PI(1)
β¨ LBLK-WRITE-READ-PI β¨
okay so bestie, welcome to lblk-write-read-pi β it lives in the xNVMe manual (section 1, we're fancy like that π
). It writes stuff, then reads it back, and it does the whole thing with protection information. yes, PI. we love a data-integrity moment. π‘οΈβ¨
πΈ NAME πΈ
lblk-write-read-pi β Writes and then read with protection information
no cap, that's literally the whole job description. π
π¦ SYNOPSIS π¦
lblk write-read-pi <uri> [<args>]
that's the shape of it. <uri> is the required main-character, everything in [<args>] is optional supporting cast. π
π DESCRIPTION π
Writes and then read with protection information
it's giving "write it, read it back, check the PI the whole time." iconic behavior fr fr. π«Ά
π REQUIRED π
these ones? mandatory. you cannot skip them, the command will simply not be having it. π
<uri>β Device URI, e.g./dev/nvme0n1,0000:01:00.1,10.9.8.1.8888,\.PhysicalDrive1
like, this is the where. which device are we talking to. periodt.
--slba 0xNUMβ Start Logical Block Address
your starting point, in hex, 0x and everything. the beginning of the saga. β
--nlb NUMβ Number of LBAs (NOTE: zero-based value)
how many logical blocks we're doing. and heads up bestie: this is a zero-based value, so the math is not mathing the way your instincts think it is. π
β¨ OPTIONAL β¨
the vibes-extras. fully optional, but they let you customize the whole situation. pick and choose, it's your world. π
[ --nsid 0xNUM ]β Namespace Identifier for Command Construction
which namespace we're building the command for. π―
[ --pract NUM ]β Protection Information Action
the PI action. yes, action. it does a thing. π¬
[ --prchk 0xNUM ]β Protection Information Check
the PI check. we verifying. we're thorough like that. β
[ --apptag 0xNUM ]β Application Tag
a little tag, for your application. cute. π·οΈ
[ --apptag_mask 0xNUM ]β Application Tag Mask
the mask that goes with the tag. they're a duo. π
[ --data-input FILE ]β Path to data input-file
where the actual data is coming from. π
[ --meta-input FILE ]β Path to meta input-file
and here's where the meta lives. β¨
[ --subnqn STRING ]β Subsystem NQN of the NVMe over Fabrics endpoint e.g.'nqn.2022-06.io.xnvme:ctrlnode1'
for when you're doing NVMe over Fabrics and need to name your subsystem. very demure, very networked. π
[ --hostnqn STRING ]β The host NQN to use when connecting to NVMe over Fabrics controllers
your host's NQN, for the Fabrics connection. the other half of the NQN love story. π«Ά
[ --be STRING ]β xNVMe backend, e.g.'linux','spdk','fbsd','macos','posix','windows'
which backend you're riding with. choose your fighter. π₯
[ --dev-nsid 0xNUM ]β Namespace Identifier for Device Handle
plot twist: this is the namespace ID for the device handle, not the command. yes, they're different options. yes, it matters. iykyk. π
[ --admin STRING ]β xNVMe admin. command-interface, e.g.'nvme','block'
which admin command-interface to use. π οΈ
[ --mem STRING ]β xNVMe buffer/memory manager
picks your buffer/memory manager. memory management is self-care. π§
[ --direct NUM ]β Bypass layers
bypass layers. skip the middlemen. main character energy, going straight to the metal. π
[ --sync STRING ]β xNVMe sync. command-interface, e.g.'nvme','block'
the sync command-interface. same energy as --admin, different lane. π
[ --help ]β Show usage / help
when in doubt, ask for help. no shame in it, bestie. π
π SEE ALSO π
Full documentation at: <https://xnvme.io/>
go read it, it's good for you. ππ
π AUTHOR π
Written by Simon A. F. Lund <simon.lund@samsung.com> on behalf of Samsung
shoutout to Simon, absolute legend for writing this down so we didn't have to. π
and that's the whole page bestie!! this was xNVMe, version dated 09 September 2024, page LBLK-WRITE-READ-PI(1) β go write, go read, go check that protection information. slay. π
β¨π¦
π¦ where this page comes from
- alpine 3.24: xnvme-doc 0.7.5-r1 Β· BSD-3-Clause
- epel 9: xnvme-tools 0.7.5-3.el9 Β· BSD-3-Clause
- fedora 43: xnvme-tools 0.7.5-5.fc43 Β· BSD-3-Clause
- fedora 44: xnvme-tools 0.7.5-6.fc44 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms