diff --git a/0001-libaio-arm64-ilp32.patch b/0001-libaio-arm64-ilp32.patch index 81bf9aa..7292bb5 100644 --- a/0001-libaio-arm64-ilp32.patch +++ b/0001-libaio-arm64-ilp32.patch @@ -1,16 +1,25 @@ +From 723d28d8ec87d0c89a7c360c29f79b1b5644695d Mon Sep 17 00:00:00 2001 +From: wangzhiqiang +Date: Fri, 28 Oct 2022 17:06:54 +0800 +Subject: [PATCH] libaio arm64 ilp32 + +--- + src/libaio.h | 2 ++ + 1 file changed, 2 insertions(+) + diff --git a/src/libaio.h b/src/libaio.h -index 2bc24e0..f44034d 100644 +index 24b4b8a..07bda2a 100644 --- a/src/libaio.h +++ b/src/libaio.h -@@ -54,6 +54,7 @@ typedef enum io_iocb_cmd { - #if defined(__i386__) || (defined(__arm__) && !defined(__ARMEB__)) || \ +@@ -55,6 +55,7 @@ typedef enum io_iocb_cmd { defined(__sh__) || defined(__bfin__) || defined(__MIPSEL__) || \ - defined(__cris__) || (defined(__riscv) && __riscv_xlen == 32) || \ + defined(__cris__) || defined(__loongarch32) || \ + (defined(__riscv) && __riscv_xlen == 32) || \ + (defined(__aarch64__) && defined(__ILP32__) && defined(__AARCH64EL__)) || \ (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ && __SIZEOF_LONG__ == 4) #define PADDED(x, y) x; unsigned y -@@ -85,6 +86,7 @@ typedef enum io_iocb_cmd { +@@ -87,6 +88,7 @@ typedef enum io_iocb_cmd { (defined(__arm__) && defined(__ARMEB__)) || \ defined(__sparc__) || defined(__MIPSEB__) || defined(__m68k__) || \ defined(__hppa__) || defined(__frv__) || defined(__avr32__) || \ @@ -18,3 +27,6 @@ index 2bc24e0..f44034d 100644 (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ && __SIZEOF_LONG__ == 4) #define PADDED(x, y) unsigned y; x +-- +2.33.0 + diff --git a/0006-skip-testcase-23-since-current-kernel-version-not-su.patch b/0006-skip-testcase-23-since-current-kernel-version-not-su.patch new file mode 100644 index 0000000..8fa5413 --- /dev/null +++ b/0006-skip-testcase-23-since-current-kernel-version-not-su.patch @@ -0,0 +1,29 @@ +From 385c1b9eb28e1cc1f64ddedb4a64aa2effa13d5c Mon Sep 17 00:00:00 2001 +From: wangzhiqiang +Date: Thu, 3 Nov 2022 16:24:49 +0800 +Subject: [PATCH] skip testcase 23 since current kernel version not support + +current kernel version of obs not support run testcase 23, +so skip it to avoild build error. +issue: https://gitee.com/src-openeuler/libaio/issue/I5XELL +--- + harness/runtests.sh | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/harness/runtests.sh b/harness/runtests.sh +index e9ceec8..a62bae7 100755 +--- a/harness/runtests.sh ++++ b/harness/runtests.sh +@@ -9,6 +9,9 @@ echo "Test run starting at" `date` + while [ $# -ge 1 ] ; do + this_test=$1 + shift ++ if [ $this_test = "cases/23.p" ];then ++ continue ++ fi + echo "Starting $this_test" + $this_test 2>&1 + res=$? +-- +2.33.0 + diff --git a/0007-libaio-Add-sw64-architecture.patch b/0007-libaio-Add-sw64-architecture.patch new file mode 100644 index 0000000..7de53ea --- /dev/null +++ b/0007-libaio-Add-sw64-architecture.patch @@ -0,0 +1,138 @@ +From 9f996eb3419e32f7408b14d49421ef9058ff17cf Mon Sep 17 00:00:00 2001 +From: wzx +Date: Mon, 7 Nov 2022 15:13:35 +0800 +Subject: [PATCH] Add sw64 architecture + +Add sw64 architecture in file harness/cases/16.t setup-libaio-0.3.113/harness/cases/16.t setup-libaio-0.3.113/src/libaio.h setup-libaio-0.3.113/src/syscall-sw_64.h setup-libaio-0.3.113/src/syscall.h src/libaio.h src/libaio.h.arm64-ilp32 src/syscall-sw_64.h src/syscall.h to support sw64 architecture. + +Signed-off-by: wzx +--- + harness/cases/16.t | 2 ++ + setup-libaio-0.3.113/harness/cases/16.t | 2 ++ + setup-libaio-0.3.113/src/libaio.h | 2 +- + setup-libaio-0.3.113/src/syscall-sw_64.h | 5 +++++ + setup-libaio-0.3.113/src/syscall.h | 2 ++ + src/libaio.h | 2 +- + src/libaio.h.arm64-ilp32 | 2 +- + src/syscall-sw_64.h | 5 +++++ + src/syscall.h | 2 ++ + 9 files changed, 21 insertions(+), 3 deletions(-) + create mode 100644 setup-libaio-0.3.113/src/syscall-sw_64.h + create mode 100644 src/syscall-sw_64.h + +diff --git a/harness/cases/16.t b/harness/cases/16.t +index 4d24b04..9e8684a 100644 +--- a/harness/cases/16.t ++++ b/harness/cases/16.t +@@ -16,6 +16,8 @@ + #define SYS_eventfd 307 + #elif defined(__s390__) + #define SYS_eventfd 318 ++#elif defined(__sw_64__) ++#define SYS_eventfd 478 + #elif defined(__alpha__) + #define SYS_eventfd 478 + #elif defined(__aarch64__) || defined(__loongarch__) || defined(__riscv) +diff --git a/setup-libaio-0.3.113/harness/cases/16.t b/setup-libaio-0.3.113/harness/cases/16.t +index 4d24b04..9e8684a 100644 +--- a/setup-libaio-0.3.113/harness/cases/16.t ++++ b/setup-libaio-0.3.113/harness/cases/16.t +@@ -16,6 +16,8 @@ + #define SYS_eventfd 307 + #elif defined(__s390__) + #define SYS_eventfd 318 ++#elif defined(__sw_64__) ++#define SYS_eventfd 478 + #elif defined(__alpha__) + #define SYS_eventfd 478 + #elif defined(__aarch64__) || defined(__loongarch__) || defined(__riscv) +diff --git a/setup-libaio-0.3.113/src/libaio.h b/setup-libaio-0.3.113/src/libaio.h +index 24b4b8a..24a1a28 100644 +--- a/setup-libaio-0.3.113/src/libaio.h ++++ b/setup-libaio-0.3.113/src/libaio.h +@@ -62,7 +62,7 @@ typedef enum io_iocb_cmd { + #define PADDEDul(x, y) unsigned long x; unsigned y + + /* little endian, 64 bits */ +-#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ ++#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || defined(__sw_64__) || \ + (defined(__aarch64__) && defined(__AARCH64EL__)) || \ + defined(__loongarch64) || \ + (defined(__riscv) && __riscv_xlen == 64) || \ +diff --git a/setup-libaio-0.3.113/src/syscall-sw_64.h b/setup-libaio-0.3.113/src/syscall-sw_64.h +new file mode 100644 +index 0000000..0aa4d3d +--- /dev/null ++++ b/setup-libaio-0.3.113/src/syscall-sw_64.h +@@ -0,0 +1,5 @@ ++#define __NR_io_setup 398 ++#define __NR_io_destroy 399 ++#define __NR_io_getevents 400 ++#define __NR_io_submit 401 ++#define __NR_io_cancel 402 +diff --git a/setup-libaio-0.3.113/src/syscall.h b/setup-libaio-0.3.113/src/syscall.h +index d2a117b..abc1762 100644 +--- a/setup-libaio-0.3.113/src/syscall.h ++++ b/setup-libaio-0.3.113/src/syscall.h +@@ -21,6 +21,8 @@ + #include "syscall-ppc.h" + #elif defined(__s390__) + #include "syscall-s390.h" ++#elif defined(__sw_64__) ++#include "syscall-sw_64.h" + #elif defined(__alpha__) + #include "syscall-alpha.h" + #elif defined(__arm__) +diff --git a/src/libaio.h b/src/libaio.h +index 87f9e8a..d9e4fb8 100644 +--- a/src/libaio.h ++++ b/src/libaio.h +@@ -63,7 +63,7 @@ typedef enum io_iocb_cmd { + #define PADDEDul(x, y) unsigned long x; unsigned y + + /* little endian, 64 bits */ +-#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ ++#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || defined(__sw_64__) || \ + (defined(__aarch64__) && defined(__AARCH64EL__)) || \ + defined(__loongarch64) || \ + (defined(__riscv) && __riscv_xlen == 64) || \ +diff --git a/src/libaio.h.arm64-ilp32 b/src/libaio.h.arm64-ilp32 +index 24b4b8a..24a1a28 100644 +--- a/src/libaio.h.arm64-ilp32 ++++ b/src/libaio.h.arm64-ilp32 +@@ -62,7 +62,7 @@ typedef enum io_iocb_cmd { + #define PADDEDul(x, y) unsigned long x; unsigned y + + /* little endian, 64 bits */ +-#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ ++#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || defined(__sw_64__) || \ + (defined(__aarch64__) && defined(__AARCH64EL__)) || \ + defined(__loongarch64) || \ + (defined(__riscv) && __riscv_xlen == 64) || \ +diff --git a/src/syscall-sw_64.h b/src/syscall-sw_64.h +new file mode 100644 +index 0000000..0aa4d3d +--- /dev/null ++++ b/src/syscall-sw_64.h +@@ -0,0 +1,5 @@ ++#define __NR_io_setup 398 ++#define __NR_io_destroy 399 ++#define __NR_io_getevents 400 ++#define __NR_io_submit 401 ++#define __NR_io_cancel 402 +diff --git a/src/syscall.h b/src/syscall.h +index d2a117b..abc1762 100644 +--- a/src/syscall.h ++++ b/src/syscall.h +@@ -21,6 +21,8 @@ + #include "syscall-ppc.h" + #elif defined(__s390__) + #include "syscall-s390.h" ++#elif defined(__sw_64__) ++#include "syscall-sw_64.h" + #elif defined(__alpha__) + #include "syscall-alpha.h" + #elif defined(__arm__) +-- +2.33.0 + diff --git a/libaio-0.3.112-sw.patch b/libaio-0.3.112-sw.patch deleted file mode 100755 index f57c3e5..0000000 --- a/libaio-0.3.112-sw.patch +++ /dev/null @@ -1,126 +0,0 @@ -diff -Nuar libaio-0.3.112.org/harness/cases/16.t libaio-0.3.112.sw/harness/cases/16.t ---- libaio-0.3.112.org/harness/cases/16.t 2022-07-29 16:39:35.580000000 +0000 -+++ libaio-0.3.112.sw/harness/cases/16.t 2022-07-29 16:44:54.450000000 +0000 -@@ -16,6 +16,8 @@ - #define SYS_eventfd 307 - #elif defined(__s390__) - #define SYS_eventfd 318 -+#elif defined(__sw_64__) -+#define SYS_eventfd 478 - #elif defined(__alpha__) - #define SYS_eventfd 478 - #elif defined(__aarch64__) -diff -Nuar libaio-0.3.112.org/libaio-0.3.112/harness/cases/16.t libaio-0.3.112.sw/libaio-0.3.112/harness/cases/16.t ---- libaio-0.3.112.org/libaio-0.3.112/harness/cases/16.t 2022-07-29 16:39:35.590000000 +0000 -+++ libaio-0.3.112.sw/libaio-0.3.112/harness/cases/16.t 2022-07-29 16:46:40.590000000 +0000 -@@ -16,6 +16,8 @@ - #define SYS_eventfd 307 - #elif defined(__s390__) - #define SYS_eventfd 318 -+#elif defined(__sw_64__) -+#define SYS_eventfd 478 - #elif defined(__alpha__) - #define SYS_eventfd 478 - #elif defined(__aarch64__) -diff -Nuar libaio-0.3.112.org/libaio-0.3.112/libaio.spec libaio-0.3.112.sw/libaio-0.3.112/libaio.spec ---- libaio-0.3.112.org/libaio-0.3.112/libaio.spec 2022-07-29 16:39:35.590000000 +0000 -+++ libaio-0.3.112.sw/libaio-0.3.112/libaio.spec 2022-07-29 16:47:04.810000000 +0000 -@@ -7,7 +7,7 @@ - Source: %{name}-%{version}.tar.gz - BuildRoot: %{_tmppath}/%{name}-root - # Fix ExclusiveArch as we implement this functionality on more architectures --ExclusiveArch: i386 x86_64 ia64 s390 s390x ppc ppc64 ppc64pseries ppc64iseries alpha alphaev6 %{arm} -+ExclusiveArch: i386 x86_64 ia64 s390 s390x ppc ppc64 ppc64pseries ppc64iseries alpha sw_64 alphaev6 %{arm} - - %description - The Linux-native asynchronous I/O facility ("async I/O", or "aio") has a -diff -Nuar libaio-0.3.112.org/libaio-0.3.112/src/libaio.h libaio-0.3.112.sw/libaio-0.3.112/src/libaio.h ---- libaio-0.3.112.org/libaio-0.3.112/src/libaio.h 2022-07-29 16:39:35.600000000 +0000 -+++ libaio-0.3.112.sw/libaio-0.3.112/src/libaio.h 2022-07-29 16:51:34.550000000 +0000 -@@ -61,7 +61,7 @@ - #define PADDEDul(x, y) unsigned long x; unsigned y - - /* little endian, 64 bits */ --#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ -+#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || defined(__sw_64__) || \ - (defined(__aarch64__) && defined(__AARCH64EL__)) || \ - (defined(__riscv) && __riscv_xlen == 64) || \ - (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ -diff -Nuar libaio-0.3.112.org/libaio-0.3.112/src/syscall-sw_64.h libaio-0.3.112.sw/libaio-0.3.112/src/syscall-sw_64.h ---- libaio-0.3.112.org/libaio-0.3.112/src/syscall-sw_64.h 1970-01-01 00:00:00.000000000 +0000 -+++ libaio-0.3.112.sw/libaio-0.3.112/src/syscall-sw_64.h 2022-07-29 16:55:06.690000000 +0000 -@@ -0,0 +1,5 @@ -+#define __NR_io_setup 398 -+#define __NR_io_destroy 399 -+#define __NR_io_getevents 400 -+#define __NR_io_submit 401 -+#define __NR_io_cancel 402 -diff -Nuar libaio-0.3.112.org/libaio-0.3.112/src/syscall.h libaio-0.3.112.sw/libaio-0.3.112/src/syscall.h ---- libaio-0.3.112.org/libaio-0.3.112/src/syscall.h 2022-07-29 16:39:35.600000000 +0000 -+++ libaio-0.3.112.sw/libaio-0.3.112/src/syscall.h 2022-07-29 16:55:31.370000000 +0000 -@@ -21,6 +21,8 @@ - #include "syscall-ppc.h" - #elif defined(__s390__) - #include "syscall-s390.h" -+#elif defined(__sw_64__) -+#include "syscall-sw_64.h" - #elif defined(__alpha__) - #include "syscall-alpha.h" - #elif defined(__arm__) -diff -Nuar libaio-0.3.112.org/libaio.spec libaio-0.3.112.sw/libaio.spec ---- libaio-0.3.112.org/libaio.spec 2022-07-29 16:39:35.580000000 +0000 -+++ libaio-0.3.112.sw/libaio.spec 2022-07-29 16:45:23.150000000 +0000 -@@ -7,7 +7,7 @@ - Source: %{name}-%{version}.tar.gz - BuildRoot: %{_tmppath}/%{name}-root - # Fix ExclusiveArch as we implement this functionality on more architectures --ExclusiveArch: i386 x86_64 ia64 s390 s390x ppc ppc64 ppc64pseries ppc64iseries alpha alphaev6 %{arm} -+ExclusiveArch: i386 x86_64 ia64 s390 s390x ppc ppc64 ppc64pseries ppc64iseries alpha sw_64 alphaev6 %{arm} - - %description - The Linux-native asynchronous I/O facility ("async I/O", or "aio") has a -diff -Nuar libaio-0.3.112.org/src/libaio.h libaio-0.3.112.sw/src/libaio.h ---- libaio-0.3.112.org/src/libaio.h 2022-07-29 16:39:35.590000000 +0000 -+++ libaio-0.3.112.sw/src/libaio.h 2022-07-29 16:48:09.440000000 +0000 -@@ -62,7 +62,7 @@ - #define PADDEDul(x, y) unsigned long x; unsigned y - - /* little endian, 64 bits */ --#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ -+#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || defined(__sw_64__) || \ - (defined(__aarch64__) && defined(__AARCH64EL__)) || \ - (defined(__riscv) && __riscv_xlen == 64) || \ - (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ -diff -Nuar libaio-0.3.112.org/src/libaio.h.arm64-ilp32 libaio-0.3.112.sw/src/libaio.h.arm64-ilp32 ---- libaio-0.3.112.org/src/libaio.h.arm64-ilp32 2022-07-29 16:39:35.590000000 +0000 -+++ libaio-0.3.112.sw/src/libaio.h.arm64-ilp32 2022-07-29 16:52:58.860000000 +0000 -@@ -61,7 +61,7 @@ - #define PADDEDul(x, y) unsigned long x; unsigned y - - /* little endian, 64 bits */ --#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ -+#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || defined(__sw_64__) || \ - (defined(__aarch64__) && defined(__AARCH64EL__)) || \ - (defined(__riscv) && __riscv_xlen == 64) || \ - (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ -diff -Nuar libaio-0.3.112.org/src/syscall-sw_64.h libaio-0.3.112.sw/src/syscall-sw_64.h ---- libaio-0.3.112.org/src/syscall-sw_64.h 1970-01-01 00:00:00.000000000 +0000 -+++ libaio-0.3.112.sw/src/syscall-sw_64.h 2022-07-29 16:54:00.610000000 +0000 -@@ -0,0 +1,5 @@ -+#define __NR_io_setup 398 -+#define __NR_io_destroy 399 -+#define __NR_io_getevents 400 -+#define __NR_io_submit 401 -+#define __NR_io_cancel 402 -diff -Nuar libaio-0.3.112.org/src/syscall.h libaio-0.3.112.sw/src/syscall.h ---- libaio-0.3.112.org/src/syscall.h 2022-07-29 16:39:35.590000000 +0000 -+++ libaio-0.3.112.sw/src/syscall.h 2022-07-29 16:54:32.940000000 +0000 -@@ -21,6 +21,8 @@ - #include "syscall-ppc.h" - #elif defined(__s390__) - #include "syscall-s390.h" -+#elif defined(__sw_64__) -+#include "syscall-sw_64.h" - #elif defined(__alpha__) - #include "syscall-alpha.h" - #elif defined(__arm__) diff --git a/libaio-0.3.112.tar.gz b/libaio-0.3.112.tar.gz deleted file mode 100644 index c3fa7c7..0000000 Binary files a/libaio-0.3.112.tar.gz and /dev/null differ diff --git a/libaio-0.3.113.tar.gz b/libaio-0.3.113.tar.gz new file mode 100644 index 0000000..59bc160 Binary files /dev/null and b/libaio-0.3.113.tar.gz differ diff --git a/libaio.spec b/libaio.spec index 3c93baf..1d15542 100644 --- a/libaio.spec +++ b/libaio.spec @@ -1,7 +1,7 @@ Name: libaio -Version: 0.3.112 -Release: 6 +Version: 0.3.113 +Release: 2 Summary: Linux-native asynchronous I/O access library License: LGPLv2+ URL: https://pagure.io/libaio @@ -15,7 +15,8 @@ Patch2: 0002-libaio-makefile-cflags.patch Patch3: 0003-libaio-fix-for-x32.patch Patch4: 0004-libaio-makefile-add-D_FORTIFY_SOURCE-flag.patch Patch5: 0005-Fix-compile-error-that-exec-checking-need-super-priv.patch -Patch6: libaio-0.3.112-sw.patch +Patch6: 0006-skip-testcase-23-since-current-kernel-version-not-su.patch +Patch7: 0007-libaio-Add-sw64-architecture.patch BuildRequires: gcc @@ -44,7 +45,8 @@ Files for libaio development %patch3 -p1 -b .fix-x32 %patch4 -p1 -b .makefile-add-D_FORTIFY_SOURCE-flag %patch5 -p1 -b .fix-compile-error -%patch6 -p1 +%patch6 -p1 -b .skip-testcase +%patch7 -p1 mv %{name}-%{version} setup-%{name}-%{version} @@ -76,8 +78,14 @@ make check %attr(0755,root,root) %{_libdir}/libaio.so %changelog -* Thu Jul 28 2022 wuzx - 0.3.112-6 -- add sw64 patch +* Wed Nov 7 2022 wuzx - 0.3.113-3 +- Add sw64 architecture + +* Thu Nov 3 2022 wangzhiqiang - 0.3.113-2 +- skip testcase 23 since current kernel version not support + +* Fri Oct 28 2022 wangzhiqiang - 0.3.113-1 +- update from 0.3.112 to 0.3.113 * Fri Jun 24 2022 lihaoxiang - 0.3.112-5 - fix compile error