Compare commits
12 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| b98c5490f5 | |||
|
|
2fad869bba | ||
| df5831e9e0 | |||
| f7d710f4a4 | |||
| 6b7ff0c7ae | |||
| 787dd54549 | |||
| 803f3c8e23 | |||
| 70e15b89b7 | |||
| cc54a40d79 | |||
| 4d777130ad | |||
| 33295ed29e | |||
| a3e4d19aaa |
@@ -1,35 +0,0 @@
|
||||
From: "Jiri Slaby (SUSE)" <jirislaby@kernel.org>
|
||||
Date: Wed, 4 Dec 2024 13:05:15 +0100
|
||||
Subject: test/init-mem: zero the ringbuf memory
|
||||
References: fix-test-crash
|
||||
Patch-mainline: Submitted, #1293
|
||||
|
||||
This is a similar fix to commit 8100d7b5f862 (test/buf-ring-nommap: zero
|
||||
the ringbuf memory). The same is needed for test/init-mem as it crashes
|
||||
with MALLOC_PERTURB_=69 too.
|
||||
|
||||
So zero the ringbuf memory after posix_memalign() too.
|
||||
|
||||
Fixes #1291.
|
||||
|
||||
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
|
||||
---
|
||||
test/init-mem.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/test/init-mem.c b/test/init-mem.c
|
||||
index 59973c8b7521..8b139fedd83b 100644
|
||||
--- a/test/init-mem.c
|
||||
+++ b/test/init-mem.c
|
||||
@@ -41,6 +41,8 @@ static int setup_ctx(struct ctx *ctx, struct q_entries *q)
|
||||
if (posix_memalign(&ctx->mem, 4096, 2*1024*1024))
|
||||
return T_EXIT_FAIL;
|
||||
|
||||
+ memset(ctx->mem, 0, 2*1024*1024);
|
||||
+
|
||||
ctx->pre = ctx->mem + 4096 - sizeof(unsigned long long);
|
||||
*ctx->pre = PRE_RED;
|
||||
|
||||
--
|
||||
2.47.1
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
From: Jens Axboe <axboe@kernel.dk>
|
||||
Date: Sun, 27 Oct 2024 18:48:55 -0600
|
||||
Subject: test/rsrc_tags: use correct buffer index for test
|
||||
References: fix-kernel-6.13
|
||||
Git-repo: https://github.com/axboe/liburing
|
||||
Git-commit: 91eecf3a88aa7f72898c17b530d3873331cc1661
|
||||
Patch-mainline: 2.9
|
||||
|
||||
The test is reading from buffer 0, but updating buffer 1. It's expecting
|
||||
buffer 1 not to be put until the per-ring state allows it, but with
|
||||
per-node refs, this is no longer true. However what is true, is that if
|
||||
we use the right buffer, then the ordering will be observed.
|
||||
|
||||
Hence use buffer offset 1 for both the read and the update test, then
|
||||
the test is actually testing what it should be testing. And it'll pass
|
||||
without full buffer table pinning.
|
||||
|
||||
Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
||||
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
|
||||
---
|
||||
test/rsrc_tags.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/rsrc_tags.c b/test/rsrc_tags.c
|
||||
index 95f65e930ee5..e78cfe403bfb 100644
|
||||
--- a/test/rsrc_tags.c
|
||||
+++ b/test/rsrc_tags.c
|
||||
@@ -184,7 +184,7 @@ static int test_buffers_update(void)
|
||||
|
||||
/* test that CQE is not emitted before we're done with a buffer */
|
||||
sqe = io_uring_get_sqe(&ring);
|
||||
- io_uring_prep_read_fixed(sqe, pipes[0], tmp_buf, 10, 0, 0);
|
||||
+ io_uring_prep_read_fixed(sqe, pipes[0], tmp_buf, 10, 0, 1);
|
||||
sqe->user_data = 100;
|
||||
ret = io_uring_submit(&ring);
|
||||
if (ret != 1) {
|
||||
--
|
||||
2.47.1
|
||||
|
||||
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-----
|
||||
BIN
liburing-2.8.tar.gz
LFS
BIN
liburing-2.8.tar.gz
LFS
Binary file not shown.
@@ -1,17 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQJEBAABCAAuFiEEwPw5LcreJtl1+l5K99NY+ylx4KYFAmcbrDAQHGF4Ym9lQGtl
|
||||
cm5lbC5kawAKCRD301j7KXHgpic7EACWTk5exmfW92IlhyE/lwiwpOMj6PKBzUM8
|
||||
MjY3qvbMGEvfVN4QFD0F3Tnlhdxy/H143ojOdFG6D6bka2sKm07V8i076p8locNf
|
||||
XXUim7C/cmFEUHGO+SfYXYfnBBNGBzE/iZ4uKGSY6TYAxu0m7RCqbUm9YDtZpeU4
|
||||
RPXeYwI4D07uwJJVy7g4m0/FtGYGICdHAkLd06CkVEW1ZsQqbIMx01o2Im+RXPad
|
||||
jwQKA9L/GyV92/VY59b3lk/CHGT1yEUhl8Av3wYrua2S7ACO7dLP4UVi9TDxSV9m
|
||||
uYYeOVLTnXhHQm8jLJU/FVXBA/kVQNC/EqXLJK+gCs3SPyLinzK1lcu6STJQAaLL
|
||||
e8nIYPQm+0+IiFrwfxCqY2x36hOXuutw9Pfg6SAjtfMC/oo54ezQoEsIyTpvau9u
|
||||
tHHqQ3E6QcQzx2L4OlDAo369vsdIQuO0Pnqa8dIdKsy96CKvquI97dhZJcBtPHhu
|
||||
QMdXtxleQ+m5J/T7Dg5ZwuM2STBZgctoeVRnEQbQkO6lfy0eGwDvlP+jGUvnTW53
|
||||
y8XBdaHfHgf2SXYvHuZvnYqV4xMZ8mh1fY0bzEsTGd2HO2ipSOdtisMwqjn6IoKF
|
||||
hXNZMwduoZd1KXfvLso0XmfstnFYUfPXB2Fg1on9H24GoX0iaPI2zgnyiZjQarYq
|
||||
IPuCifPL3A==
|
||||
=7E4E
|
||||
-----END PGP SIGNATURE-----
|
||||
@@ -1,3 +1,59 @@
|
||||
-------------------------------------------------------------------
|
||||
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>
|
||||
|
||||
- disable tests on non-x86 -- they fail pretty randomly.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 8 11:46:39 UTC 2025 - Guillaume GARDET <guillaume.gardet@opensuse.org>
|
||||
|
||||
- Disable resize-rings.t as it is not very stable in OBS
|
||||
- Disable timeout.t on Leap 15.6/15.7
|
||||
- Disable read-inc-file.t and timeout.t on Leap 16.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 4 08:32:20 UTC 2025 - Guillaume GARDET <guillaume.gardet@opensuse.org>
|
||||
|
||||
- Add upstream patch to fix test on aarch64:
|
||||
* 923961c.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 3 13:00:56 UTC 2025 - Guillaume GARDET <guillaume.gardet@opensuse.org>
|
||||
|
||||
- Update to 2.9:
|
||||
* Add support for ring resizing
|
||||
* Add support for registered waits
|
||||
* Test additions and improvements
|
||||
* Fix bug with certain ring setups with SQE128 set not fully closing
|
||||
the ring after io_uring_queue_exit(3) had been called.
|
||||
* Various man page fixes and updates
|
||||
- Remove upstreamed patches:
|
||||
* 0001-test-init-mem-zero-the-ringbuf-memory.patch
|
||||
* 0001-test-rsrc_tags-use-correct-buffer-index-for-test.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 11 08:39:50 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
# spec file for package liburing
|
||||
#
|
||||
# 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
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -18,7 +19,7 @@
|
||||
|
||||
%define lname liburing2
|
||||
Name: liburing
|
||||
Version: 2.8
|
||||
Version: 2.13
|
||||
Release: 0
|
||||
Summary: Linux-native io_uring I/O access library
|
||||
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
|
||||
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
|
||||
Patch0: 0001-test-init-mem-zero-the-ringbuf-memory.patch
|
||||
Patch1: 0001-test-rsrc_tags-use-correct-buffer-index-for-test.patch
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: pkgconfig
|
||||
@@ -88,33 +87,33 @@ export CPPFLAGS="%{optflags} -fno-stack-protector"
|
||||
%make_build -C src
|
||||
|
||||
%check
|
||||
declare -a TEST_EXCLUDE=()
|
||||
# the tests terribly (and randomly!) fail on non-x86
|
||||
%ifarch x86_64
|
||||
# io_uring syscalls not supported as of qemu 7.0.0 and would test the host
|
||||
# kernel anyway not the target kernel..
|
||||
%if !0%{?qemu_user_space_build}
|
||||
declare -a TEST_EXCLUDE=( resize-rings.t conn-unreach.t min-timeout-wait.t )
|
||||
|
||||
%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 )
|
||||
%endif
|
||||
%if 0%{?sle_version} == 150600
|
||||
TEST_EXCLUDE+=( register-restrictions.t sqpoll-sleep.t )
|
||||
%endif
|
||||
%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 )
|
||||
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
|
||||
%if 0%{?sle_version} == 150700
|
||||
TEST_EXCLUDE+=( fifo-futex-poll.t )
|
||||
%endif
|
||||
%if 0%{?suse_version} == 1600
|
||||
TEST_EXCLUDE+=( sqwait.t )
|
||||
TEST_EXCLUDE+=( read-inc-file.t sqwait.t timeout.t )
|
||||
%endif
|
||||
|
||||
%ifarch %{arm}
|
||||
TEST_EXCLUDE+=( min-timeout-wait.t )
|
||||
%elifarch ppc64le
|
||||
TEST_EXCLUDE+=( no-mmap-inval.t recv-multishot.t reg-fd-only.t recvsend_bundle.t recvsend_bundle-inc.t )
|
||||
%elifarch s390x
|
||||
TEST_EXCLUDE+=( 7ad0e4b2f83c.t futex.t multicqes_drain.t poll-mshot-update.t read-mshot.t timeout-new.t waitid.t )
|
||||
TEST_EXCLUDE+=( link-timeout.t min-timeout-wait.t submit-and-wait.t sync-cancel.t )
|
||||
%endif
|
||||
|
||||
# io_uring syscalls not supported as of qemu 7.0.0 and would test the host
|
||||
# kernel anyway not the target kernel..
|
||||
%if !0%{?qemu_user_space_build}
|
||||
echo "TEST_EXCLUDE=\"${TEST_EXCLUDE[@]}\"" > test/config.local
|
||||
%make_build runtests
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%install
|
||||
%make_install
|
||||
@@ -122,28 +121,27 @@ rm -v %{buildroot}%{_libdir}/%{name}*.a
|
||||
|
||||
%fdupes %{buildroot}/%{_mandir}/
|
||||
|
||||
%post -n %{lname} -p /sbin/ldconfig
|
||||
%postun -n %{lname} -p /sbin/ldconfig
|
||||
|
||||
%post -n liburing-ffi2 -p /sbin/ldconfig
|
||||
%postun -n liburing-ffi2 -p /sbin/ldconfig
|
||||
%ldconfig_scriptlets -n %{lname}
|
||||
%ldconfig_scriptlets -n liburing-ffi2
|
||||
|
||||
%files -n %{lname}
|
||||
%{_libdir}/liburing.so.*
|
||||
%license COPYING COPYING.GPL LICENSE
|
||||
|
||||
%files -n liburing-ffi2
|
||||
%license COPYING COPYING.GPL LICENSE
|
||||
%{_libdir}/liburing-ffi.so.*
|
||||
|
||||
%files devel
|
||||
%license COPYING COPYING.GPL LICENSE
|
||||
%doc README
|
||||
%{_includedir}/liburing/
|
||||
%{_includedir}/liburing.h
|
||||
%{_libdir}/liburing.so
|
||||
%{_libdir}/liburing-ffi.so
|
||||
%{_libdir}/pkgconfig/*
|
||||
%{_mandir}/man2/*
|
||||
%{_mandir}/man3/*
|
||||
%{_mandir}/man7/*
|
||||
%{_mandir}/man2/*2%{?ext_man}
|
||||
%{_mandir}/man3/*3%{?ext_man}
|
||||
%{_mandir}/man7/*7%{?ext_man}
|
||||
|
||||
%changelog
|
||||
|
||||
Reference in New Issue
Block a user