3 ms·
My understanding of io_uring on Linux is that the submission queue only holds the recently-submitted entries that the kernel has not started processing. Once th
by wtallis 5y ago
My understanding of io_uring on Linux is that the submission queue only holds the recently-submitted entries that the kernel has not started processing. Once the kernel reads a Submission Queue Entry, it consumes that SQE and keeps track of command status using private memory, and a Completion Queue entry will not appear until the kernel is done handling that IO operation. So the Submission Queue size is not a limitation on how many in-flight/pending IOs there can be, just on how big a batch you can dump on the kernel at once. Of course, the kernel's internal limits on operation state tracking might be smaller or larger than the Submission Queue size.
- Matthias247 5y agoRight. That would make sense. Would be interesting to know what the limit for submitted operations is (if any)