public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/
Date: Wed, 20 Oct 2021 01:51:31 +0000 (UTC)	[thread overview]
Message-ID: <1634694335.2ef2c4badbd29b3ae21c7f0615fb95af0068a74c.sam@gentoo> (raw)

commit:     2ef2c4badbd29b3ae21c7f0615fb95af0068a74c
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct  9 05:09:41 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Oct 20 01:45:35 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ef2c4ba

sys-libs/liburing: fix build on arm

Closes: https://bugs.gentoo.org/816798
Signed-off-by: Sam James <sam <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/22523

 .../liburing/files/liburing-2.1-arm-syscall.patch  | 54 ++++++++++++++++++++++
 sys-libs/liburing/liburing-2.1.ebuild              |  5 ++
 2 files changed, 59 insertions(+)

diff --git a/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
new file mode 100644
index 00000000000..a652b052148
--- /dev/null
+++ b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
@@ -0,0 +1,54 @@
+https://github.com/axboe/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da
+https://bugs.gentoo.org/816798
+
+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.
+
+Signed-off-by: Guillem Jover <guillem@hadrons.org>
+--- 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);
+

diff --git a/sys-libs/liburing/liburing-2.1.ebuild b/sys-libs/liburing/liburing-2.1.ebuild
index 6d65622e2a7..dd13ba0d9ab 100644
--- a/sys-libs/liburing/liburing-2.1.ebuild
+++ b/sys-libs/liburing/liburing-2.1.ebuild
@@ -21,6 +21,11 @@ IUSE="static-libs"
 # fsync test hangs forever
 RESTRICT="test"
 
+PATCHES=(
+	# Upstream, bug #816798
+	"${FILESDIR}"/${P}-arm-syscall.patch
+)
+
 src_prepare() {
 	default
 	multilib_copy_sources


             reply	other threads:[~2021-10-20  1:51 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-20  1:51 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-12-01 20:05 [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/ Lars Wendler
2022-03-14 15:56 Sam James
2023-01-22  8:48 Florian Schmaus
2023-02-14  9:58 Florian Schmaus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1634694335.2ef2c4badbd29b3ae21c7f0615fb95af0068a74c.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox