!18 [sync] PR-15: Update to liburing 2.4

From: @openeuler-sync-bot 
Reviewed-by: @liubo254 
Signed-off-by: @liubo254
This commit is contained in:
openeuler-ci-bot 2025-04-16 07:05:22 +00:00 committed by Gitee
commit 4ceb2faec8
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
5 changed files with 31 additions and 45 deletions

22
0001-enable-libc.patch Normal file
View File

@ -0,0 +1,22 @@
diff --git a/configure b/configure
index 28f3eb0..9f7cff4 100755
--- a/configure
+++ b/configure
@@ -413,9 +413,15 @@ int main(void){
#endif
}
EOF
-if compile_prog "" "" "nolibc support"; then
- liburing_nolibc="yes"
-fi
+# Temporarily disable nolibc because false positives exist and compilation may
+# fail later. The issue is that compile_prog does not use the CFLAGS modified
+# for nolibc, so it cannot detect when nolibc won't work (e.g. due to the gcc
+# stack protector requiring __stack_chk_fail_local from libc on i686).
+#
+# if compile_prog "" "" "nolibc support"; then
+# liburing_nolibc="yes"
+# fi
+liburing_nolibc="no"
print_config "nolibc support" "$liburing_nolibc";
#############################################################################

Binary file not shown.

BIN
liburing-2.4.tar.gz Normal file

Binary file not shown.

View File

@ -1,42 +0,0 @@
From 10500de05b6fdb5c39351d8ad704f4eb25e5074c Mon Sep 17 00:00:00 2001
From: wzx <wuzx1226@qq.com>
Date: Thu, 10 Nov 2022 14:47:45 +0800
Subject: [PATCH] Add sw64 architecture
Add sw64 architecture in src/include/liburing.h to support sw64 architecture.
Conflict: liburing v2.3 move the support of architectures to src/include/liburing.h,
moving the counterpart to that place.
Signed-off-by: wzx <wuzx1226@qq.com>
Signed-off-by: lihaoxiang <lihaoxiang9@huawei.com>
---
src/include/liburing.h | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/include/liburing.h b/src/include/liburing.h
index 12a703f..3de0b78 100644
--- a/src/include/liburing.h
+++ b/src/include/liburing.h
@@ -57,7 +57,17 @@
#ifndef __NR_io_uring_register
#define __NR_io_uring_register (__NR_Linux + 427)
#endif
-#else /* !__alpha__ and !__mips__ */
+#elif defined __sw_64__
+#ifndef __NR_io_uring_setup
+#define __NR_io_uring_setup 272
+#endif
+#ifndef __NR_io_uring_enter
+#define __NR_io_uring_enter 273
+#endif
+#ifndef __NR_io_uring_register
+#define __NR_io_uring_register 274
+#endif
+#else /* !__alpha__ and !__mips__ and !__sw_64__ */
#ifndef __NR_io_uring_setup
#define __NR_io_uring_setup 425
#endif
--
1.8.3.1

View File

@ -1,15 +1,15 @@
Name: liburing
Version: 2.3
Version: 2.4
Release: 1
Summary: Linux-native io_uring I/O access library
License: (GPLv2 with exceptions and LGPLv2+) or MIT
Source0: https://brick.kernel.dk/snaps/%{name}-%{version}.tar.gz
URL: https://git.kernel.dk/cgit/liburing/
BuildRequires: gcc
BuildRequires: g++
BuildRequires: gcc-c++
BuildRequires: make
Patch1: liburing-Add-sw64-architecture.patch
Patch1: 0001-enable-libc.patch
%description
Provides native async IO for the Linux kernel, in a fast and efficient
@ -38,19 +38,25 @@ for the Linux-native io_uring.
%files
%attr(0755,root,root) %{_libdir}/liburing.so.*
%attr(0755,root,root) %{_libdir}/liburing-ffi.so.*
%license COPYING
%files devel
%{_includedir}/liburing/
%{_includedir}/liburing.h
%{_libdir}/liburing.so
%{_libdir}/liburing-ffi.so
%exclude %{_libdir}/liburing.a
%exclude %{_libdir}/liburing-ffi.a
%{_libdir}/pkgconfig/*
%{_mandir}/man2/*
%{_mandir}/man3/*
%{_mandir}/man7/*
%changelog
* Mon Mar 31 2025 yangchen <yangchen145@huawei.com> - 2.4-1
- Update to liburing 2.4
* Mon Dec 12 2022 lihaoxiang <lihaoxiang9@huawei.com> - 2.3-1
- upgrade to liburing v2.3