diff options
author | Khem Raj <raj.khem@gmail.com> | 2021-10-31 12:07:55 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2021-11-01 05:45:17 -0700 |
commit | d27bf0b122aa71636faae9819fd78acf74cdba7b (patch) | |
tree | ffa11398f7c4e4f4c4816137aac13f672f312840 | |
parent | 2dd1a2f2a9730326a4b1b32f6246ae93178906eb (diff) | |
download | meta-openembedded-contrib-d27bf0b122aa71636faae9819fd78acf74cdba7b.tar.gz |
liburing: Use libc mmap() wrapper instead of calling __NR_mmap syscall directly
Fixes build on arm and rv32
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
-rw-r--r-- | meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch | 59 | ||||
-rw-r--r-- | meta-oe/recipes-support/liburing/liburing_2.1.bb | 4 |
2 files changed, 62 insertions, 1 deletions
diff --git a/meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch b/meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch new file mode 100644 index 0000000000..2777a94045 --- /dev/null +++ b/meta-oe/recipes-support/liburing/liburing/0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch @@ -0,0 +1,59 @@ +From cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001 +From: Guillem Jover <guillem@hadrons.org> +Date: Mon, 13 Sep 2021 23:56:08 +0200 +Subject: [PATCH] test: Use syscall wrappers instead of using syscall(2) directly + +Some of these syscalls have different entry points depending on the +architecture. Use the wrappers to avoid having to reimplement them +portably. + +Fixes build failures on Debian armel and armhf builds. + +Upstream-Status: Backport [https://github.com/kraj/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da] +Signed-off-by: Guillem Jover <guillem@hadrons.org> +--- + test/sqpoll-cancel-hang.c | 7 ++----- + 1 file changed, 2 insertions(+), 5 deletions(-) + +diff --git a/test/sqpoll-cancel-hang.c b/test/sqpoll-cancel-hang.c +index c9032c8..e561478 100644 +--- a/test/sqpoll-cancel-hang.c ++++ b/test/sqpoll-cancel-hang.c +@@ -4,7 +4,6 @@ + #include <stdlib.h> + #include <string.h> + #include <sys/mman.h> +-#include <sys/syscall.h> + #include <sys/wait.h> + #include <time.h> + #include <unistd.h> +@@ -29,8 +28,6 @@ static uint64_t current_time_ms(void) + + #define IORING_OFF_SQES 0x10000000ULL + +-#define sys_io_uring_setup 425 +- + static void kill_and_wait(int pid, int* status) + { + kill(-pid, SIGKILL); +@@ -53,7 +50,7 @@ a5) + void* vma2 = (void*)a3; + void** ring_ptr_out = (void**)a4; + void** sqes_ptr_out = (void**)a5; +- uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params); ++ uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params); + uint32_t sq_ring_sz = setup_params->sq_off.array + + setup_params->sq_entries * sizeof(uint32_t); + uint32_t cq_ring_sz = setup_params->cq_off.cqes + +@@ -135,7 +132,7 @@ void trigger_bug(void) + } + int main(void) + { +- syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); ++ mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); + int pid = fork(); + if (pid < 0) + exit(1); +-- +2.33.1 + diff --git a/meta-oe/recipes-support/liburing/liburing_2.1.bb b/meta-oe/recipes-support/liburing/liburing_2.1.bb index b4f0b11f4e..f519bf2363 100644 --- a/meta-oe/recipes-support/liburing/liburing_2.1.bb +++ b/meta-oe/recipes-support/liburing/liburing_2.1.bb @@ -9,7 +9,9 @@ SECTION = "libs" LICENSE = "LGPLv2.1 | MIT" LIC_FILES_CHKSUM = "file://README;beginline=41;endline=44;md5=d51b5805e2a675685e6a66ca50904cf9" -SRC_URI = "git://github.com/axboe/liburing.git;branch=master;protocol=https" +SRC_URI = "git://github.com/axboe/liburing.git;branch=master;protocol=https \ + file://0001-test-Use-syscall-wrappers-instead-of-using-syscall-2.patch \ + " SRC_URI:append:libc-musl:riscv64 = " file://0001-do-not-build-examples.patch " SRC_URI:append:libc-musl:riscv32 = " file://0001-do-not-build-examples.patch " SRCREV = "41a61c97c2e3df4475c93fdf5026d575ce3f1377" |