1*4882a593SmuzhiyunFrom cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Guillem Jover <guillem@hadrons.org>
3*4882a593SmuzhiyunDate: Mon, 13 Sep 2021 23:56:08 +0200
4*4882a593SmuzhiyunSubject: [PATCH] test: Use syscall wrappers instead of using syscall(2) directly
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunSome of these syscalls have different entry points depending on the
7*4882a593Smuzhiyunarchitecture. Use the wrappers to avoid having to reimplement them
8*4882a593Smuzhiyunportably.
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunFixes build failures on Debian armel and armhf builds.
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunUpstream-Status: Backport [https://github.com/kraj/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da]
13*4882a593SmuzhiyunSigned-off-by: Guillem Jover <guillem@hadrons.org>
14*4882a593Smuzhiyun---
15*4882a593Smuzhiyun test/sqpoll-cancel-hang.c | 7 ++-----
16*4882a593Smuzhiyun 1 file changed, 2 insertions(+), 5 deletions(-)
17*4882a593Smuzhiyun
18*4882a593Smuzhiyundiff --git a/test/sqpoll-cancel-hang.c b/test/sqpoll-cancel-hang.c
19*4882a593Smuzhiyunindex c9032c8..e561478 100644
20*4882a593Smuzhiyun--- a/test/sqpoll-cancel-hang.c
21*4882a593Smuzhiyun+++ b/test/sqpoll-cancel-hang.c
22*4882a593Smuzhiyun@@ -4,7 +4,6 @@
23*4882a593Smuzhiyun #include <stdlib.h>
24*4882a593Smuzhiyun #include <string.h>
25*4882a593Smuzhiyun #include <sys/mman.h>
26*4882a593Smuzhiyun-#include <sys/syscall.h>
27*4882a593Smuzhiyun #include <sys/wait.h>
28*4882a593Smuzhiyun #include <time.h>
29*4882a593Smuzhiyun #include <unistd.h>
30*4882a593Smuzhiyun@@ -29,8 +28,6 @@ static uint64_t current_time_ms(void)
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun #define IORING_OFF_SQES 0x10000000ULL
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun-#define sys_io_uring_setup 425
35*4882a593Smuzhiyun-
36*4882a593Smuzhiyun static void kill_and_wait(int pid, int* status)
37*4882a593Smuzhiyun {
38*4882a593Smuzhiyun     kill(-pid, SIGKILL);
39*4882a593Smuzhiyun@@ -53,7 +50,7 @@ a5)
40*4882a593Smuzhiyun     void* vma2 = (void*)a3;
41*4882a593Smuzhiyun     void** ring_ptr_out = (void**)a4;
42*4882a593Smuzhiyun     void** sqes_ptr_out = (void**)a5;
43*4882a593Smuzhiyun-    uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params);
44*4882a593Smuzhiyun+    uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params);
45*4882a593Smuzhiyun     uint32_t sq_ring_sz = setup_params->sq_off.array +
46*4882a593Smuzhiyun setup_params->sq_entries * sizeof(uint32_t);
47*4882a593Smuzhiyun     uint32_t cq_ring_sz = setup_params->cq_off.cqes +
48*4882a593Smuzhiyun@@ -135,7 +132,7 @@ void trigger_bug(void)
49*4882a593Smuzhiyun }
50*4882a593Smuzhiyun int main(void)
51*4882a593Smuzhiyun {
52*4882a593Smuzhiyun-    syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
53*4882a593Smuzhiyun+    mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
54*4882a593Smuzhiyun     int pid = fork();
55*4882a593Smuzhiyun     if (pid < 0)
56*4882a593Smuzhiyun         exit(1);
57*4882a593Smuzhiyun--
58*4882a593Smuzhiyun2.33.1
59*4882a593Smuzhiyun
60