Please enable JavaScript.
Coggle requires JavaScript to display documents.
io_uring_bpf - Coggle Diagram
io_uring_bpf
ideas
each bpf sqe is provided one unique id in this ring
two keys
io key
group key
define struct_ops for each sqe/req
focus on op itself
no special operation
ops
prep
issue
cleanup
extend sqe by bpf map
add kfuncs for extending op capability
define one per-ring struct ops for allocating bpf ring data
bpf cache data
arena is enough for covering all cases?
motivation
extend io_uring
how to use SQE
extend SQE op
how to use buffer
build pipe between requests
data can be shared between two linked OPs
help sqe group
memcpy
decompression/compression
enc/dec
design
write to io_kiocb
limit to the payload?
many can be set in bpf ->prep()
refer to io_prep_rw & net
offset 8 ~ 64 of io_kiocb can be written by prog
for others, write is done via kfuncs
start with simple
focus on small function
memory copy
decompress
kernel decompress interface?
questions
is it possible to replace sqe group?
not doable basically