summaryrefslogtreecommitdiff
path: root/include/uapi
diff options
context:
space:
mode:
authorPavel Begunkov <asml.silence@gmail.com>2022-07-27 12:30:41 +0300
committerJens Axboe <axboe@kernel.dk>2022-07-27 17:50:50 +0300
commit14b146b688ad9593f5eee93d51a34d09a47e50b5 (patch)
tree760b8eb09789bf4df3eec796829bae78b7c480fe /include/uapi
parentbd1a3783dd749012134b142b52e5704f7c142897 (diff)
downloadlinux-14b146b688ad9593f5eee93d51a34d09a47e50b5.tar.xz
io_uring: notification completion optimisation
We want to use all optimisations that we have for io_uring requests like completion batching, memory caching and more but for zc notifications. Fortunately, notification perfectly fit the request model so we can overlay them onto struct io_kiocb and use all the infratructure. Most of the fields of struct io_notif natively fits into io_kiocb, so we replace struct io_notif with struct io_kiocb carrying struct io_notif_data in the cmd cache line. Then we adapt io_alloc_notif() to use io_alloc_req()/io_alloc_req_refill(), and kill leftovers of hand coded caching. __io_notif_complete_tw() is converted to use io_uring's tw infra. Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Link: https://lore.kernel.org/r/9e010125175e80baf51f0ca63bdc7cc6a4a9fa56.1658913593.git.asml.silence@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/uapi')
0 files changed, 0 insertions, 0 deletions