io_uring: make poll->wait dynamically allocated
authorJens Axboe <axboe@kernel.dk>
Tue, 26 Nov 2019 22:02:04 +0000 (15:02 -0700)
committerJens Axboe <axboe@kernel.dk>
Tue, 26 Nov 2019 22:02:56 +0000 (15:02 -0700)
commite944475e69849273ca8f1fe04a3ce81b5901d165
tree025ec2f3808ffa90a83691e41273918d99f9a2b3
parent6206f0e180d4eddc0a178f57120ab1b913701f6e
io_uring: make poll->wait dynamically allocated

In the quest to bring io_kiocb down to 3 cachelines, this one does
the trick. Make the wait_queue_entry for the poll command come out
of kmalloc instead of embedding it in struct io_poll_iocb, as the
latter is the largest member of io_kiocb. Once we trim this down a
bit, we're back at a healthy 192 bytes for struct io_kiocb.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c