diff options
author | wangmy <wangmy@fujitsu.com> | 2022-07-11 16:45:15 +0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2022-07-12 01:05:43 -0700 |
commit | ffd4e943b953b76821fea8859bfed4c5a8691955 (patch) | |
tree | 8d8a510a8abee0c6fb24f33ef3851f5d882d587f /meta-oe/recipes-support/liburing | |
parent | 4b00f21f167a94338efbb8a865e71a9e4a421e54 (diff) | |
download | meta-openembedded-ffd4e943b953b76821fea8859bfed4c5a8691955.tar.gz |
liburing: upgrade 2.1 -> 2.2
0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch
removed since it's included in 2.2.
License-Update:
Add "kernel version dependency"
Add affect of "ulimit settings"
Changelog:
===========
- Support non-libc builds.
- Optimized syscall handling for x86-64/x86/aarch64.
- Enable non-lib function calls for fast path functions.
- Add support for multishot accept.
- io_uring_register_files() will set RLIMIT_NOFILE if necessary.
- Add support for registered ring fds, io_uring_register_ring_fd(),
reducingthe overhead of an io_uring_enter() system call.
- Add support for the message ring opcode.
- Add support for newer request cancelation features.
- Add support for IORING_SETUP_COOP_TASKRUN, which can help reduce the
overhead of io_uring in general. Most applications should set this flag,
see the io_uring_setup.2 man page for details.
- Add support for registering a sparse buffer and file set.
- Add support for a new buffer provide scheme, see
io_uring_register_buf_ring.3 for details.
- Add io_uring_submit_and_wait_timeout() for submitting IO and waiting
for completions with a timeout.
- Add io_uring_prep_{read,write}v2 prep helpers.
- Add io_uring_prep_close_direct() helper.
- Add support for SQE128 and CQE32, which are doubly sized SQE and CQE
rings. This is needed for some cases of the new IORING_OP_URING_CMD,
notably for NVMe passthrough.
- ~5500 lines of man page additions, including adding ~90 new man pages.
- Synced with the 5.19 kernel release, supporting all the features of
5.19 and earlier.
- 24 new regression test cases, and ~7000 lines of new tests in general.
- General optimizations and fixes.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/liburing')
-rw-r--r-- | meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch | 59 | ||||
-rw-r--r-- | meta-oe/recipes-support/liburing/liburing_2.2.bb (renamed from meta-oe/recipes-support/liburing/liburing_2.1.bb) | 8 |
2 files changed, 3 insertions, 64 deletions
diff --git a/meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch b/meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch deleted file mode 100644 index 2777a9404..000000000 --- a/meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch +++ /dev/null | |||
@@ -1,59 +0,0 @@ | |||
1 | From cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001 | ||
2 | From: Guillem Jover <guillem@hadrons.org> | ||
3 | Date: Mon, 13 Sep 2021 23:56:08 +0200 | ||
4 | Subject: [PATCH] test: Use syscall wrappers instead of using syscall(2) directly | ||
5 | |||
6 | Some of these syscalls have different entry points depending on the | ||
7 | architecture. Use the wrappers to avoid having to reimplement them | ||
8 | portably. | ||
9 | |||
10 | Fixes build failures on Debian armel and armhf builds. | ||
11 | |||
12 | Upstream-Status: Backport [https://github.com/kraj/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da] | ||
13 | Signed-off-by: Guillem Jover <guillem@hadrons.org> | ||
14 | --- | ||
15 | test/sqpoll-cancel-hang.c | 7 ++----- | ||
16 | 1 file changed, 2 insertions(+), 5 deletions(-) | ||
17 | |||
18 | diff --git a/test/sqpoll-cancel-hang.c b/test/sqpoll-cancel-hang.c | ||
19 | index c9032c8..e561478 100644 | ||
20 | --- a/test/sqpoll-cancel-hang.c | ||
21 | +++ b/test/sqpoll-cancel-hang.c | ||
22 | @@ -4,7 +4,6 @@ | ||
23 | #include <stdlib.h> | ||
24 | #include <string.h> | ||
25 | #include <sys/mman.h> | ||
26 | -#include <sys/syscall.h> | ||
27 | #include <sys/wait.h> | ||
28 | #include <time.h> | ||
29 | #include <unistd.h> | ||
30 | @@ -29,8 +28,6 @@ static uint64_t current_time_ms(void) | ||
31 | |||
32 | #define IORING_OFF_SQES 0x10000000ULL | ||
33 | |||
34 | -#define sys_io_uring_setup 425 | ||
35 | - | ||
36 | static void kill_and_wait(int pid, int* status) | ||
37 | { | ||
38 | kill(-pid, SIGKILL); | ||
39 | @@ -53,7 +50,7 @@ a5) | ||
40 | void* vma2 = (void*)a3; | ||
41 | void** ring_ptr_out = (void**)a4; | ||
42 | void** sqes_ptr_out = (void**)a5; | ||
43 | - uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params); | ||
44 | + uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params); | ||
45 | uint32_t sq_ring_sz = setup_params->sq_off.array + | ||
46 | setup_params->sq_entries * sizeof(uint32_t); | ||
47 | uint32_t cq_ring_sz = setup_params->cq_off.cqes + | ||
48 | @@ -135,7 +132,7 @@ void trigger_bug(void) | ||
49 | } | ||
50 | int main(void) | ||
51 | { | ||
52 | - syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); | ||
53 | + mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); | ||
54 | int pid = fork(); | ||
55 | if (pid < 0) | ||
56 | exit(1); | ||
57 | -- | ||
58 | 2.33.1 | ||
59 | |||
diff --git a/meta-oe/recipes-support/liburing/liburing_2.1.bb b/meta-oe/recipes-support/liburing/liburing_2.2.bb index da8e6d333..8cc7d74f9 100644 --- a/meta-oe/recipes-support/liburing/liburing_2.1.bb +++ b/meta-oe/recipes-support/liburing/liburing_2.2.bb | |||
@@ -7,14 +7,12 @@ BUGTRACKER = "https://github.com/axboe/liburing/issues" | |||
7 | SECTION = "libs" | 7 | SECTION = "libs" |
8 | 8 | ||
9 | LICENSE = "LGPL-2.1-only | MIT" | 9 | LICENSE = "LGPL-2.1-only | MIT" |
10 | LIC_FILES_CHKSUM = "file://README;beginline=41;endline=44;md5=d51b5805e2a675685e6a66ca50904cf9" | 10 | LIC_FILES_CHKSUM = "file://README;beginline=41;endline=44;md5=2b0e9926530c269f5ae95560370195af" |
11 | 11 | ||
12 | SRC_URI = "git://github.com/axboe/liburing.git;branch=master;protocol=https \ | 12 | SRC_URI = "git://github.com/axboe/liburing.git;branch=master;protocol=https" |
13 | file://0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch \ | ||
14 | " | ||
15 | SRC_URI:append:libc-musl:riscv64 = " file://0001-do-not-build-examples.patch " | 13 | SRC_URI:append:libc-musl:riscv64 = " file://0001-do-not-build-examples.patch " |
16 | SRC_URI:append:libc-musl:riscv32 = " file://0001-do-not-build-examples.patch " | 14 | SRC_URI:append:libc-musl:riscv32 = " file://0001-do-not-build-examples.patch " |
17 | SRCREV = "41a61c97c2e3df4475c93fdf5026d575ce3f1377" | 15 | SRCREV = "dda4848a9911120a903bef6284fb88286f4464c9" |
18 | 16 | ||
19 | S = "${WORKDIR}/git" | 17 | S = "${WORKDIR}/git" |
20 | 18 | ||