Skip to content

Commit

Permalink
chore: fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
romange committed Jan 16, 2025
1 parent c7a6b36 commit e4afeea
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions man/io_uring_prep_recv.3
Original file line number Diff line number Diff line change
Expand Up @@ -94,15 +94,18 @@ field indicates the total number of bytes received, and the buffer ID returned
in the CQE
.I flags
field indicates the first buffer in the receive operation. The application must
iterate from the indicated initial buffer ID and until all
process the indicated initial buffer ID and until all
.I res
bytes have been seen to know which is the last buffer in the receive operation.
The buffers consumed will be contiguous from the initial buffer, in the order
in which they appear in the buffer ring. The CQE struct does not contain the position
of the buffer in the bufring, therefore in order to identify buffers contained by the bundle,
it is advised to maintain the cached head index per bufring. This uint16_t index represents the position of the next buffer to be consumed within the ring. Upon completion of a receive operation on a buffer ring, the cached head index should be incremented accordingly.
Receiving in bundles can
improve performance when more than one chunk of data is available to receive,
in which they appear in the buffer ring. The CQE struct does not contain
the position of the buffer in the buffer ring, therefore in order to identify
buffers contained by the bundle, it is advised to maintain the cached head
index per buffer ring. This uint16_t index represents the position of the next
buffer to be consumed within the ring. Upon completion of a receive operation,
the cached head index should be incremented accordingly.
Receiving in bundles can improve performance when more than one chunk of
data is available to receive,
by eliminating redundant round trips through the networking stack. Receive
bundles may be used by both single shot and multishot receive operations. Note
that, internally, bundles rely on the networking stack passing back how much
Expand Down

0 comments on commit e4afeea

Please sign in to comment.