for-5.4/io_uring-2019-09-15
-----BEGIN PGP SIGNATURE----- iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAl1+zs8QHGF4Ym9lQGtl cm5lbC5kawAKCRD301j7KXHgpvIOD/9P4MhnjTc9sFz978YGw2kP/yUjW0Vs194B nV5wmM+J3I6VUBgurNQeB7f14b/1CZnnPjisLKGzz1SKrhRQT/HuXzItsYpzRql3 3GvD4aRNJd52pfkX3p7tA8uMr5Hh2gnNLhJtlPTaaAiIc8XCme+hHMnlmhwqMZ0T FKTc0Pw0yxvYIbxmt+pfWxoKhHrq12dYLG61Iv8XeSCb3k+EzdZV8jQdnN/TVhsF ngzxRMvbPjJ/TvDcsdV0qNqmLTojgmuiAvDs/3YPCreGVhMBkm4w/tlZGqTJHSdb Ljxzwp0Ungu94O2Ct3gN+pIxTJ5hgfnArfT40fbWczZrlXzUKw4d3mW/QG3g/Elf aUfCY+3WWR/Fs+XT5ZDasJDewwO4j5wYgO8VYeyTX08jobcxC/osqoMtGUqsljwJ CTWMYSD8MTXEnOIZFK9sgjg0AoJYVDE8SXN/zx+7K7iVk9+5xQTkuL/cCd+3/Nih 73QqvwpRm0Tik4yLGcw+EJc2ttvNUsI5EEETloiGNaMeK1oOJvzSu8qhh0G9VdYo DWka5Yo+kLzwuUMbtzVSq288Un+RjbUIoqrqMFqm5QLqUYYg735IH2McIZvIEHEj o0vjudw/yxcpURGqV5cokeusIHex/LC8hItCwHY4U9959A2yOtiCs/Bi7LIj3lAu FO5gTlGDHA== =KSaR -----END PGP SIGNATURE----- Merge tag 'for-5.4/io_uring-2019-09-15' of git://git.kernel.dk/linux-block Pull io_uring updates from Jens Axboe: - Allocate SQ/CQ ring together, more efficient. Expose this through a feature flag as well, so we can reduce the number of mmaps by 1 (Hristo and me) - Fix for sequence logic with SQ thread (Jackie). - Add support for links with drain commands (Jackie). - Improved async merging (me) - Improved buffered async write performance (me) - Support SQ poll wakeup + event get in single io_uring_enter() (me) - Support larger SQ ring size. For epoll conversions, the 4k limit was too small for some prod workloads (Daniel). - put_user_page() usage (John) * tag 'for-5.4/io_uring-2019-09-15' of git://git.kernel.dk/linux-block: io_uring: increase IORING_MAX_ENTRIES to 32K io_uring: make sqpoll wakeup possible with getevents io_uring: extend async work merging io_uring: limit parallelism of buffered writes io_uring: add io_queue_async_work() helper io_uring: optimize submit_and_wait API io_uring: add support for link with drain io_uring: fix wrong sequence setting logic io_uring: expose single mmap capability io_uring: allocate the two rings together fs/io_uring.c: convert put_page() to put_user_page*()
This commit is contained in:
commit
1e6fa3a33e
531
fs/io_uring.c
531
fs/io_uring.c
File diff suppressed because it is too large
Load Diff
|
@ -128,11 +128,17 @@ struct io_uring_params {
|
||||||
__u32 flags;
|
__u32 flags;
|
||||||
__u32 sq_thread_cpu;
|
__u32 sq_thread_cpu;
|
||||||
__u32 sq_thread_idle;
|
__u32 sq_thread_idle;
|
||||||
__u32 resv[5];
|
__u32 features;
|
||||||
|
__u32 resv[4];
|
||||||
struct io_sqring_offsets sq_off;
|
struct io_sqring_offsets sq_off;
|
||||||
struct io_cqring_offsets cq_off;
|
struct io_cqring_offsets cq_off;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* io_uring_params->features flags
|
||||||
|
*/
|
||||||
|
#define IORING_FEAT_SINGLE_MMAP (1U << 0)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* io_uring_register(2) opcodes and arguments
|
* io_uring_register(2) opcodes and arguments
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue