libnvmf_con...et_io_queues(9)
π NAME π
libnvmf_context_set_io_queues β bestie, this is the one that sets up your whole I/O queue topology for the context β¨
Ok so real talk, this page is from the libnvme API manual (yes, the libnvme girlies are thriving) and honestly? It's giving "one setter to rule them all" π
β¨ SYNOPSIS β¨
int libnvmf_context_set_io_queues (struct libnvmf_context *fctx , int
nr_io_queues , int nr_write_queues , int nr_poll_queues , int queue_size
, bool disable_sqflow );
π¦ ARGUMENTS π¦
fctxβ the Fabrics context π like, the whole vibe lives in herenr_io_queuesβ how many I/O queues you want, periodtnr_write_queuesβ how many write-only queues (yes, they exist, and they eat)nr_poll_queuesβ how many polling queues πΈqueue_sizeβ number of entries per I/O queue (this is theSQSIZEin the Connect command, iykyk π)disable_sqflowβ ngl this one just disables SQ flow control negotiation π
π DESCRIPTION π
Okay so this is a convenience setter for the five parameters that together define the I/O queue structure used when you establish a controller connection π₯ All five of them feed directly into the Connect command at queue creation time β no detours, no middleman, straight in π
And here's the part that lowkey trips people up: nr_write_queues and nr_poll_queues are additive π«Ά So the total I/O queues is literally:
nr_io_queues + nr_write_queues + nr_poll_queues
Like, do not just eyeball nr_io_queues and call it a day, you'll be off by however many extras you threw in π
Also! If you only need to change a subset of these, there are individual accessors waiting for you, and they're all iconic in their own right:
libnvmf_context_set_nr_io_queues_set_nr_write_queues_set_nr_poll_queues_set_queue_size_set_disable_sqflow
Use the big one when you're changing everything, use the little ones when you're just touching up one thing β¨ main character energy either way.
β RETURN β
0 on success, negative error code otherwise. That's it, that's the whole vibe check π
π§ Friendly reminder bestie: the two extra queue counts are additive to the total β don't let that sneak up on you π
And that's the page! Big kisses from the libnvme API manual, dated October 2026 β go forth and queue responsibly π¦β¨π
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms