forked from pool/liburing
Compare commits
7 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| b98c5490f5 | |||
|
|
2fad869bba | ||
| df5831e9e0 | |||
| f7d710f4a4 | |||
| 6b7ff0c7ae | |||
| 787dd54549 | |||
| 803f3c8e23 |
@@ -1,53 +0,0 @@
|
|||||||
From 923961c84c0acb166163a1e33bac127ab0559be6 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jens Axboe <axboe@kernel.dk>
|
|
||||||
Date: Thu, 3 Apr 2025 09:51:23 -0600
|
|
||||||
Subject: [PATCH] test/pipe-bug: ignore -ENOMEM on ring creation
|
|
||||||
|
|
||||||
Since this test case sets up and tears down a ton of rings, this can
|
|
||||||
result in the deferred freeing/unaccounting causing spurious -ENOMEM
|
|
||||||
returns. This is expected if the system is configured to be tight on
|
|
||||||
locked memory (ulimit -l). If this happens, inject a small delay and
|
|
||||||
just have it retry.
|
|
||||||
|
|
||||||
Link: https://github.com/axboe/liburing/issues/1377
|
|
||||||
Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
|
||||||
---
|
|
||||||
test/pipe-bug.c | 16 +++++++++++-----
|
|
||||||
1 file changed, 11 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/test/pipe-bug.c b/test/pipe-bug.c
|
|
||||||
index 49e4a9412..c76134486 100644
|
|
||||||
--- a/test/pipe-bug.c
|
|
||||||
+++ b/test/pipe-bug.c
|
|
||||||
@@ -24,20 +24,26 @@ do { \
|
|
||||||
|
|
||||||
static int pipe_bug(void)
|
|
||||||
{
|
|
||||||
- struct io_uring_params p;
|
|
||||||
struct io_uring ring;
|
|
||||||
struct io_uring_sqe *sqe;
|
|
||||||
struct io_uring_cqe *cqe;
|
|
||||||
char buf[1024];
|
|
||||||
- int fds[2];
|
|
||||||
+ int ret, fds[2];
|
|
||||||
struct __kernel_timespec to = {
|
|
||||||
.tv_sec = 1
|
|
||||||
};
|
|
||||||
|
|
||||||
- CHECK(pipe(fds) == 0);
|
|
||||||
+ ret = io_uring_queue_init(8, &ring, 0);
|
|
||||||
+ /* can hit -ENOMEM due to repeated ring creation and teardowns */
|
|
||||||
+ if (ret == -ENOMEM) {
|
|
||||||
+ usleep(1000);
|
|
||||||
+ return 0;
|
|
||||||
+ } else if (ret) {
|
|
||||||
+ fprintf(stderr, "ring_init: %d\n", ret);
|
|
||||||
+ return 1;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- memset(&p, 0, sizeof(p));
|
|
||||||
- CHECK(t_create_ring_params(8, &ring, &p) == 0);
|
|
||||||
+ CHECK(pipe(fds) == 0);
|
|
||||||
|
|
||||||
/* WRITE */
|
|
||||||
sqe = io_uring_get_sqe(&ring);
|
|
||||||
3
liburing-2.13.tar.gz
Normal file
3
liburing-2.13.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:af9384f05917adbf6ac8e554eeb7e37a8d97a734abb01db988b304a3a11e1230
|
||||||
|
size 454224
|
||||||
17
liburing-2.13.tar.gz.asc
Normal file
17
liburing-2.13.tar.gz.asc
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmlAyeYQHGF4Ym9lQGtl
|
||||||
|
cm5lbC5kawAKCRD301j7KXHgprO7EACsbTiofkYkKqKpsQ3OV1nO3hADQn07OHIk
|
||||||
|
rKrA03YZCD5QqcvfZpsOWAmD6qETKEWhjez8hVzWs4N1N39FkM76zqej8feKbNxX
|
||||||
|
pz4cJ8qSJ3rKDqtAjR83ax2U52vSJD2Mj+h5tEKGH1G2dPjBxD0TWknp3c2aDiRM
|
||||||
|
kpDQHpxXQcP/8lesruAue4EJGUntfO0GYTaaq693bQVGuJdpl3nMcszqmlratPrs
|
||||||
|
aH4JQoSrz4WzrlVz+o+YOv7SPk/puMe5qEwrq0wxhoHyqzyala5/gpw8+UxDJxV/
|
||||||
|
yLvRAEh6Fk9FI0HaBN+LVGwntv+YkwnaPZBGEClONgH1gworc5dlEn3fxXghnS0/
|
||||||
|
hgy1V8fZP7WP+5XoiEo26xd8/1IG4uFc/7QJx3MS7s1biOHhC+6SC62u3pp23Hdc
|
||||||
|
dHfz6Qk5hC8nHiV2q3HUzMKxOjt0rDmXD5RRMhL7tA3M15K8V0UK+22BItEA5COg
|
||||||
|
uS65r8AHfVKrQiM5Q/qhlxRperf5JEvmERu4aiTS3XKluRlN06X/6aphPbLx0t27
|
||||||
|
D9ktq2fRx9PazdaMhXYdHLyCzMk3p+FvqaNsLRnMi2AbVJHOBcyqz5r/L7a3pPuL
|
||||||
|
+RwZwbUdhFNmVTaWS2FPIGA0jo8RwievgeA3rDkZpGDLUM1j2SyUn8UJqqIwwKLh
|
||||||
|
v92BTWVEzw==
|
||||||
|
=ZjVj
|
||||||
|
-----END PGP SIGNATURE-----
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:57e9b36e4ac1e46b8e0351dfb1694dc59638fc25e384b4ba36d87b800b16db1a
|
|
||||||
size 407142
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmeguikQHGF4Ym9lQGtl
|
|
||||||
cm5lbC5kawAKCRD301j7KXHgpvfXD/0TzJoza2uLw+gACsVM895NjvlP30aiJxqz
|
|
||||||
0EM1V7wntGOQk53lVdTVJZ7sq5iIRGsVj+ByIlaGGKXPWRAqyroOT0v6OLfJW820
|
|
||||||
CjjHcLTw2ZNTnoO4LW3i6z4T8T7jtm800qUdlNkOYEUJ8cgu4yG4/RuRGewIeKJi
|
|
||||||
jNFKeTb6KlVih7/T86ormA/LJup1ppKGCfSuzvDJMk40p6nEb4rfiT9fYbXdoSFl
|
|
||||||
CLQZn3/XGpFwg2fMkM68XPw5Va8ATA4qiJ1sv1fZdEAJOhErJQgxKLqXHbTOd86J
|
|
||||||
KvGTNL5UtCa64TnUmn8YgANk2sJPohOzsBuD9mOCZthVx/gbBZ4olVdWkWhA8x4C
|
|
||||||
2JX03uh0BXeJGH0TgJ9j/9GVhVCMohulmbRCrwWpdcI4cwgSvbxftqA7MJMaVmxB
|
|
||||||
NVH3Gf5ecZtg5DX0PSy0dga7aAHkWMFOZ04uoOY0HmUDfCjeElZLsAsDQTdVuO+8
|
|
||||||
mS5FSSOnerFznJ7foVKgX6693Y1CYiiqlAvWzzEg0iB79EDcar2SaCIrZq20np8u
|
|
||||||
fdmCFmxtdTTZJF65gljszVovbC7Sp3iYYThgRXdwVrSgEclWAR82CHZ1qsqzHN/R
|
|
||||||
Mr1VU8C8EYsWVyq4zKBaCjDviX64IlBrKCmD570tOM/4LRfrbCHHvANzfx4+rGMo
|
|
||||||
DSli4Ub/aA==
|
|
||||||
=I6sI
|
|
||||||
-----END PGP SIGNATURE-----
|
|
||||||
@@ -1,3 +1,27 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Dec 21 09:14:57 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||||
|
|
||||||
|
- update to 2.13:
|
||||||
|
* Add support for pipe operations, as supported by newer kernels
|
||||||
|
* Fixes for error path handling
|
||||||
|
* fixes to memory handling correctness
|
||||||
|
* fixes to build system and tests
|
||||||
|
* documentation updates and fixes
|
||||||
|
* fixes to undefined behavior issues and compiler issues
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Aug 23 18:36:26 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||||
|
|
||||||
|
- update to 2.11:
|
||||||
|
* portability and compiler fixes
|
||||||
|
* Fixes for io_uring_queue_init_mem()
|
||||||
|
* Add helpers for ring sizes required
|
||||||
|
- includes changes from 2.10:
|
||||||
|
* fix io_uring_setup() parameter name mismatch
|
||||||
|
* syscall: update io_uring_enter2() signature
|
||||||
|
* documentation updates
|
||||||
|
- drop 923961c.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Jun 25 07:26:44 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
|
Wed Jun 25 07:26:44 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
# spec file for package liburing
|
# spec file for package liburing
|
||||||
#
|
#
|
||||||
# Copyright (c) 2025 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
|
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -18,7 +19,7 @@
|
|||||||
|
|
||||||
%define lname liburing2
|
%define lname liburing2
|
||||||
Name: liburing
|
Name: liburing
|
||||||
Version: 2.9
|
Version: 2.13
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Linux-native io_uring I/O access library
|
Summary: Linux-native io_uring I/O access library
|
||||||
License: (GPL-2.0-only AND LGPL-2.1-or-later) OR MIT
|
License: (GPL-2.0-only AND LGPL-2.1-or-later) OR MIT
|
||||||
@@ -27,8 +28,6 @@ URL: https://github.com/axboe/liburing
|
|||||||
Source0: https://brick.kernel.dk/snaps/%{name}-%{version}.tar.gz
|
Source0: https://brick.kernel.dk/snaps/%{name}-%{version}.tar.gz
|
||||||
Source1: https://brick.kernel.dk/snaps/%{name}-%{version}.tar.gz.asc
|
Source1: https://brick.kernel.dk/snaps/%{name}-%{version}.tar.gz.asc
|
||||||
Source2: https://git.kernel.org/pub/scm/docs/kernel/pgpkeys.git/plain/keys/F7D358FB2971E0A6.asc#/%{name}.keyring
|
Source2: https://git.kernel.org/pub/scm/docs/kernel/pgpkeys.git/plain/keys/F7D358FB2971E0A6.asc#/%{name}.keyring
|
||||||
# PATCH-FIX-UPSTREAM - https://github.com/axboe/liburing/issues/1377
|
|
||||||
Patch1: 923961c.patch
|
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
@@ -93,14 +92,20 @@ export CPPFLAGS="%{optflags} -fno-stack-protector"
|
|||||||
# io_uring syscalls not supported as of qemu 7.0.0 and would test the host
|
# io_uring syscalls not supported as of qemu 7.0.0 and would test the host
|
||||||
# kernel anyway not the target kernel..
|
# kernel anyway not the target kernel..
|
||||||
%if !0%{?qemu_user_space_build}
|
%if !0%{?qemu_user_space_build}
|
||||||
declare -a TEST_EXCLUDE=( resize-rings.t )
|
declare -a TEST_EXCLUDE=( resize-rings.t conn-unreach.t min-timeout-wait.t )
|
||||||
|
|
||||||
%if 0%{?sle_version} == 150500
|
%if 0%{?sle_version} == 150500
|
||||||
TEST_EXCLUDE+=( fallocate.t fd-pass.t fixed-buf-merge.t msg-ring-overflow.t nop.t poll-race-mshot.t reg-hint.t sqwait.t wq-aff.t )
|
TEST_EXCLUDE+=( fallocate.t fd-pass.t fixed-buf-merge.t msg-ring-overflow.t nop.t poll-race-mshot.t reg-hint.t sqwait.t wq-aff.t )
|
||||||
%endif
|
%endif
|
||||||
|
%if 0%{?sle_version} == 150600
|
||||||
|
TEST_EXCLUDE+=( register-restrictions.t sqpoll-sleep.t )
|
||||||
|
%endif
|
||||||
%if 0%{?sle_version} == 150600 || 0%{?sle_version} == 150700
|
%if 0%{?sle_version} == 150600 || 0%{?sle_version} == 150700
|
||||||
TEST_EXCLUDE+=( accept-non-empty.t bind-listen.t fallocate.t nop.t recvsend_bundle.t recvsend_bundle-inc.t sqwait.t timeout.t )
|
TEST_EXCLUDE+=( accept-non-empty.t bind-listen.t fallocate.t nop.t recvsend_bundle.t recvsend_bundle-inc.t sqwait.t timeout.t )
|
||||||
%endif
|
%endif
|
||||||
|
%if 0%{?sle_version} == 150700
|
||||||
|
TEST_EXCLUDE+=( fifo-futex-poll.t )
|
||||||
|
%endif
|
||||||
%if 0%{?suse_version} == 1600
|
%if 0%{?suse_version} == 1600
|
||||||
TEST_EXCLUDE+=( read-inc-file.t sqwait.t timeout.t )
|
TEST_EXCLUDE+=( read-inc-file.t sqwait.t timeout.t )
|
||||||
%endif
|
%endif
|
||||||
@@ -116,28 +121,27 @@ rm -v %{buildroot}%{_libdir}/%{name}*.a
|
|||||||
|
|
||||||
%fdupes %{buildroot}/%{_mandir}/
|
%fdupes %{buildroot}/%{_mandir}/
|
||||||
|
|
||||||
%post -n %{lname} -p /sbin/ldconfig
|
%ldconfig_scriptlets -n %{lname}
|
||||||
%postun -n %{lname} -p /sbin/ldconfig
|
%ldconfig_scriptlets -n liburing-ffi2
|
||||||
|
|
||||||
%post -n liburing-ffi2 -p /sbin/ldconfig
|
|
||||||
%postun -n liburing-ffi2 -p /sbin/ldconfig
|
|
||||||
|
|
||||||
%files -n %{lname}
|
%files -n %{lname}
|
||||||
%{_libdir}/liburing.so.*
|
%{_libdir}/liburing.so.*
|
||||||
%license COPYING COPYING.GPL LICENSE
|
%license COPYING COPYING.GPL LICENSE
|
||||||
|
|
||||||
%files -n liburing-ffi2
|
%files -n liburing-ffi2
|
||||||
|
%license COPYING COPYING.GPL LICENSE
|
||||||
%{_libdir}/liburing-ffi.so.*
|
%{_libdir}/liburing-ffi.so.*
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
|
%license COPYING COPYING.GPL LICENSE
|
||||||
%doc README
|
%doc README
|
||||||
%{_includedir}/liburing/
|
%{_includedir}/liburing/
|
||||||
%{_includedir}/liburing.h
|
%{_includedir}/liburing.h
|
||||||
%{_libdir}/liburing.so
|
%{_libdir}/liburing.so
|
||||||
%{_libdir}/liburing-ffi.so
|
%{_libdir}/liburing-ffi.so
|
||||||
%{_libdir}/pkgconfig/*
|
%{_libdir}/pkgconfig/*
|
||||||
%{_mandir}/man2/*
|
%{_mandir}/man2/*2%{?ext_man}
|
||||||
%{_mandir}/man3/*
|
%{_mandir}/man3/*3%{?ext_man}
|
||||||
%{_mandir}/man7/*
|
%{_mandir}/man7/*7%{?ext_man}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|||||||
Reference in New Issue
Block a user