diff --git a/handle-eintr.patch b/handle-eintr.patch deleted file mode 100644 index 394b27f..0000000 --- a/handle-eintr.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- liburing-2.2/test/ce593a6c480a.c -+++ liburing-2.2/test/ce593a6c480a.c -@@ -111,15 +111,16 @@ - (void*) (intptr_t) other_fd); - - /* Wait on the event fd for an event to be ready */ -- ret = read(loop_fd, buf, 8); -- if (ret < 0) { -- perror("read"); -- return 1; -- } else if (ret != 8) { -- fprintf(stderr, "Odd-sized eventfd read: %d\n", ret); -- return 1; -- } -- -+ do { -+ ret = read(loop_fd, buf, 8); -+ if (ret < 0 && errno != EINTR) { -+ perror("read"); -+ return 1; -+ } else if (ret > 0 && ret != 8) { -+ fprintf(stderr, "Odd-sized eventfd read: %d\n", ret); -+ return 1; -+ } -+ } while (ret < 0); - - ret = io_uring_wait_cqe(&ring, &cqe); - if (ret) { ---- liburing-2.2/test/io-cancel.c -+++ liburing-2.2/test/io-cancel.c -@@ -366,10 +366,17 @@ - } else { - int wstatus; - -- if (waitpid(p, &wstatus, 0) == (pid_t)-1) { -- perror("waitpid()"); -- return 1; -- } -+ do { -+ if (waitpid(p, &wstatus, 0) == (pid_t)-1) { -+ if (errno == EINTR) { -+ continue; -+ } -+ perror("waitpid()"); -+ return 1; -+ } -+ break; -+ } while (1); -+ - if (!WIFEXITED(wstatus) || WEXITSTATUS(wstatus)) { - fprintf(stderr, "child failed %i\n", WEXITSTATUS(wstatus)); - return 1; diff --git a/liburing-2.2.tar.bz2 b/liburing-2.2.tar.bz2 deleted file mode 100644 index 94c5db4..0000000 --- a/liburing-2.2.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0fcd25dc1eb32cbeb534219f8e7fcfeadbd8dc2304aa447148e5ca8408076f22 -size 172733 diff --git a/liburing-2.3.tar.bz2 b/liburing-2.3.tar.bz2 new file mode 100644 index 0000000..4e69dfe --- /dev/null +++ b/liburing-2.3.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f242bd38777c79ee4e1169f817e08ce111b03e033ef9a1bde274d3196d4de36e +size 197929 diff --git a/liburing.changes b/liburing.changes index 6e55787..e49e998 100644 --- a/liburing.changes +++ b/liburing.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Fri Nov 18 21:26:17 UTC 2022 - Dirk Müller + +- update to 2.3: + * Support non-libc build for aarch64. + * Add io_uring_{enter,enter2,register,setup} syscall functions. + * Add sync cancel interface, io_uring_register_sync_cancel(). + * Fix return value of io_uring_submit_and_wait_timeout() to match the + man page. + * Improvements to the regression tests + * Add support and test case for passthrough IO + * Add recv and recvmsg multishot helpers and support + * Add documentation and support for IORING_SETUP_DEFER_TASKRUN + * Fix potential missing kernel entry with IORING_SETUP_IOPOLL + * Add support and documentation for zero-copy network transmit + * Various optimizations + * Many cleanups + * Many man page additions and updates +- drop handle-eintr.patch, test-xattr-don-t-rely-on-NUL-termination.patch: upstream + ------------------------------------------------------------------- Sun Sep 25 14:34:41 UTC 2022 - Dirk Müller diff --git a/liburing.spec b/liburing.spec index 116498d..917aad8 100644 --- a/liburing.spec +++ b/liburing.spec @@ -18,19 +18,13 @@ %define lname liburing2 Name: liburing -Version: 2.2 +Version: 2.3 Release: 0 Summary: Linux-native io_uring I/O access library License: (GPL-2.0-only AND LGPL-2.1-or-later) OR MIT Group: Development/Libraries/C and C++ URL: https://git.kernel.dk/cgit/liburing Source: https://git.kernel.dk/cgit/liburing/snapshot/%{name}-%{version}.tar.bz2 -# PATCH-FIX-UPSTREAM: has been accepted upstream -Patch0: test-xattr-don-t-rely-on-NUL-termination.patch -# PATCH-FIX-UPSTREAM: has been accepted upstream -# [1/1] Handle EINTR in tests -# commit: fa67f6aedcfdaffc14cbf0b631253477b2565ef0 -Patch2: handle-eintr.patch BuildRequires: gcc-c++ BuildRequires: pkgconfig BuildRequires: procps diff --git a/test-xattr-don-t-rely-on-NUL-termination.patch b/test-xattr-don-t-rely-on-NUL-termination.patch deleted file mode 100644 index fb4849e..0000000 --- a/test-xattr-don-t-rely-on-NUL-termination.patch +++ /dev/null @@ -1,46 +0,0 @@ -From: Jiri Slaby -Date: Tue, 16 Aug 2022 12:44:14 +0200 -Subject: test/xattr: don't rely on NUL-termination -Patch-mainline: yes -Git-commit: bf3fedba890e66d644692910964fe1d8cbf4fb1b -References: bsc#1202413 - -The returned value from io_uring_fgetxattr() needs not be NUL-terminated, -as we stored non-NUL-terminated string by io_uring_fsetxattr() -previously. - -So don't use strlen() on value, but on VALUE1, and VALUE2 respectively. - -This fixes random test failures. - -Cc: Stefan Roesch -Fixes: d6515e06f73c ("liburing: Add new test program to verify xattr support") -Signed-off-by: Jiri Slaby ---- - test/xattr.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/test/xattr.c b/test/xattr.c -index d88059cb..101d82b3 100644 ---- a/test/xattr.c -+++ b/test/xattr.c -@@ -210,14 +210,14 @@ static int test_fxattr(void) - - /* Test reading attributes. */ - value_len = io_uring_fgetxattr(&ring, fd, KEY1, value, XATTR_SIZE); -- if (value_len != strlen(value) || strncmp(value, VALUE1, value_len)) { -+ if (value_len != strlen(VALUE1) || strncmp(value, VALUE1, value_len)) { - fprintf(stderr, "Error: fgetxattr expected value: %s, returned value: %s\n", VALUE1, value); - rc = -1; - goto Exit; - } - - value_len = io_uring_fgetxattr(&ring, fd, KEY2, value, XATTR_SIZE); -- if (value_len != strlen(value)|| strncmp(value, VALUE2, value_len)) { -+ if (value_len != strlen(VALUE2) || strncmp(value, VALUE2, value_len)) { - fprintf(stderr, "Error: fgetxattr expected value: %s, returned value: %s\n", VALUE2, value); - rc = -1; - goto Exit; --- -2.35.3 -