All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h
@ 2020-03-10 11:07 Laurent Vivier
  2020-03-10 11:07 ` [PATCH 1/4] scripts: add a script to generate syscall_nr.h Laurent Vivier
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Laurent Vivier @ 2020-03-10 11:07 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio, Laurent Vivier,
	Alistair Francis

This series adds a script to generate syscall_nr.h for
architectures that don't use syscall.tbl but asm-generic/unistd.h

The script uses several cpp passes and filters result with a grep/sed/tr sequence.
The result must be checked before being used, so it's why the script is not
automatically run.

I have run the script, checked and added new files for arm64, nios2, openrisc.

I don't include result for riscv as Alistair is already working on a series
for this architecture and it needs some changes in syscall.c as some
syscalls are not defined.

We also need to add the _time64 variant of syscalls added by the update of the
syscall_nr.h.

Based-on: <20200310103403.3284090-1-laurent@vivier.eu>

Laurent Vivier (4):
  scripts: add a script to generate syscall_nr.h
  linux-user,aarch64: sync syscall numbers with kernel v5.5
  linux-user,nios2: sync syscall numbers with kernel v5.5
  linux-user,openrisc: sync syscall numbers with kernel v5.5

 linux-user/aarch64/syscall_nr.h  |  32 +-
 linux-user/nios2/syscall_nr.h    | 648 +++++++++++++++----------------
 linux-user/openrisc/syscall_nr.h | 307 +++------------
 scripts/gensyscalls.sh           |  94 +++++
 4 files changed, 499 insertions(+), 582 deletions(-)
 create mode 100755 scripts/gensyscalls.sh

-- 
2.24.1



^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/4] scripts: add a script to generate syscall_nr.h
  2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
@ 2020-03-10 11:07 ` Laurent Vivier
  2020-03-10 17:25   ` Alistair Francis
  2020-03-11 13:09   ` Taylor Simpson
  2020-03-10 11:07 ` [PATCH 2/4] linux-user, aarch64: sync syscall numbers with kernel v5.5 Laurent Vivier
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 12+ messages in thread
From: Laurent Vivier @ 2020-03-10 11:07 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio, Laurent Vivier,
	Alistair Francis

This script is needed for targets based on asm-generic syscall numbers generation

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 scripts/gensyscalls.sh | 94 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 94 insertions(+)
 create mode 100755 scripts/gensyscalls.sh

diff --git a/scripts/gensyscalls.sh b/scripts/gensyscalls.sh
new file mode 100755
index 000000000000..3b549a665d0f
--- /dev/null
+++ b/scripts/gensyscalls.sh
@@ -0,0 +1,94 @@
+#!/bin/sh
+
+linux="$1"
+output="$2"
+
+TMP=$(mktemp -d)
+
+if [ "$linux" = "" ] ; then
+    echo "Needs path to linux source tree" 1>&2
+    exit 1
+fi
+
+if [ "$output" = "" ] ; then
+    output="$PWD"
+fi
+
+upper()
+{
+    echo "$1" | tr "[:lower:]" "[:upper:]" | tr "[:punct:]" "_"
+}
+
+qemu_arch()
+{
+    case "$1" in
+    arm64)
+        echo "aarch64"
+        ;;
+    *)
+        upper "$1"
+        ;;
+    esac
+}
+
+read_includes()
+{
+    arch=$1
+    bits=$2
+
+     cpp -P -nostdinc -fdirectives-only \
+        -D_UAPI_ASM_$(upper ${arch})_BITSPERLONG_H \
+        -D__BITS_PER_LONG=${bits} \
+        -I${linux}/arch/${arch}/include/uapi/ \
+        -I${linux}/include/uapi \
+        -I${TMP} \
+        "${linux}/arch/${arch}/include/uapi/asm/unistd.h"
+}
+
+filter_defines()
+{
+    grep -e "#define __NR_" -e "#define __NR3264"
+}
+
+rename_defines()
+{
+    sed "s/ __NR_/ TARGET_NR_/g;s/(__NR_/(TARGET_NR_/g"
+}
+
+evaluate_values()
+{
+    sed "s/#define TARGET_NR_/QEMU TARGET_NR_/" | \
+    cpp -P -nostdinc | \
+    sed "s/^QEMU /#define /"
+}
+
+generate_syscall_nr()
+{
+    arch=$1
+    bits=$2
+    file="$3"
+    guard="$(upper LINUX_USER_$(qemu_arch $arch)_$(basename "$file"))"
+
+    (echo "/*"
+    echo " * This file contains the system call numbers."
+    echo " */"
+    echo "#ifndef ${guard}"
+    echo "#define ${guard}"
+    echo
+    read_includes $arch $bits | filter_defines | rename_defines | \
+                                evaluate_values | sort -n -k 3
+    echo
+    echo "#endif /* ${guard} */"
+    echo) > "$file"
+}
+
+mkdir "$TMP/asm"
+> "$TMP/asm/bitsperlong.h"
+
+generate_syscall_nr arm64 64 "$output/linux-user/aarch64/syscall_nr.h"
+generate_syscall_nr nios2 32 "$output/linux-user/nios2/syscall_nr.h"
+generate_syscall_nr openrisc 32 "$output/linux-user/openrisc/syscall_nr.h"
+
+generate_syscall_nr riscv 32 "$output/linux-user/riscv/syscall32_nr.h"
+generate_syscall_nr riscv 64 "$output/linux-user/riscv/syscall64_nr.h"
+rm -fr "$TMP"
-- 
2.24.1



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/4] linux-user, aarch64: sync syscall numbers with kernel v5.5
  2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
  2020-03-10 11:07 ` [PATCH 1/4] scripts: add a script to generate syscall_nr.h Laurent Vivier
@ 2020-03-10 11:07 ` Laurent Vivier
  2020-03-10 17:26   ` Alistair Francis
  2020-03-10 11:07 ` [PATCH 3/4] linux-user,nios2: " Laurent Vivier
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 12+ messages in thread
From: Laurent Vivier @ 2020-03-10 11:07 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio, Laurent Vivier,
	Alistair Francis

Use helper script scripts/gensyscalls.sh to generate the file.

This change TARGET_NR_fstatat64 by TARGET_NR_newfstatat that is correct
because definitions from linux are:

arch/arm64/include/uapi/asm/unistd.h

  #define __ARCH_WANT_NEW_STAT

include/uapi/asm-generic/unistd.h

  #if defined(__ARCH_WANT_NEW_STAT) || defined(__ARCH_WANT_STAT64)
  #define __NR3264_fstatat 79
  __SC_3264(__NR3264_fstatat, sys_fstatat64, sys_newfstatat)
  #define __NR3264_fstat 80
  __SC_3264(__NR3264_fstat, sys_fstat64, sys_newfstat)
  #endif
  ...
  #if __BITS_PER_LONG == 64 && !defined(__SYSCALL_COMPAT)
  ...
  #if defined(__ARCH_WANT_NEW_STAT) || defined(__ARCH_WANT_STAT64)
  #define __NR_newfstatat __NR3264_fstatat
  #define __NR_fstat __NR3264_fstat
  #endif
  ...

Add syscalls 286 (preadv2) to 435 (clone3).

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/aarch64/syscall_nr.h | 32 +++++++++++++++++++++++++++-----
 1 file changed, 27 insertions(+), 5 deletions(-)

diff --git a/linux-user/aarch64/syscall_nr.h b/linux-user/aarch64/syscall_nr.h
index f00ffd7fb82f..eb5287bf6c98 100644
--- a/linux-user/aarch64/syscall_nr.h
+++ b/linux-user/aarch64/syscall_nr.h
@@ -1,7 +1,6 @@
 /*
  * This file contains the system call numbers.
  */
-
 #ifndef LINUX_USER_AARCH64_SYSCALL_NR_H
 #define LINUX_USER_AARCH64_SYSCALL_NR_H
 
@@ -84,7 +83,7 @@
 #define TARGET_NR_splice 76
 #define TARGET_NR_tee 77
 #define TARGET_NR_readlinkat 78
-#define TARGET_NR_fstatat64 79
+#define TARGET_NR_newfstatat 79
 #define TARGET_NR_fstat 80
 #define TARGET_NR_sync 81
 #define TARGET_NR_fsync 82
@@ -254,8 +253,8 @@
 #define TARGET_NR_prlimit64 261
 #define TARGET_NR_fanotify_init 262
 #define TARGET_NR_fanotify_mark 263
-#define TARGET_NR_name_to_handle_at         264
-#define TARGET_NR_open_by_handle_at         265
+#define TARGET_NR_name_to_handle_at 264
+#define TARGET_NR_open_by_handle_at 265
 #define TARGET_NR_clock_adjtime 266
 #define TARGET_NR_syncfs 267
 #define TARGET_NR_setns 268
@@ -276,5 +275,28 @@
 #define TARGET_NR_membarrier 283
 #define TARGET_NR_mlock2 284
 #define TARGET_NR_copy_file_range 285
+#define TARGET_NR_preadv2 286
+#define TARGET_NR_pwritev2 287
+#define TARGET_NR_pkey_mprotect 288
+#define TARGET_NR_pkey_alloc 289
+#define TARGET_NR_pkey_free 290
+#define TARGET_NR_statx 291
+#define TARGET_NR_io_pgetevents 292
+#define TARGET_NR_rseq 293
+#define TARGET_NR_kexec_file_load 294
+#define TARGET_NR_pidfd_send_signal 424
+#define TARGET_NR_io_uring_setup 425
+#define TARGET_NR_io_uring_enter 426
+#define TARGET_NR_io_uring_register 427
+#define TARGET_NR_open_tree 428
+#define TARGET_NR_move_mount 429
+#define TARGET_NR_fsopen 430
+#define TARGET_NR_fsconfig 431
+#define TARGET_NR_fsmount 432
+#define TARGET_NR_fspick 433
+#define TARGET_NR_pidfd_open 434
+#define TARGET_NR_clone3 435
+#define TARGET_NR_syscalls 436
+
+#endif /* LINUX_USER_AARCH64_SYSCALL_NR_H */
 
-#endif
-- 
2.24.1



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 3/4] linux-user,nios2: sync syscall numbers with kernel v5.5
  2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
  2020-03-10 11:07 ` [PATCH 1/4] scripts: add a script to generate syscall_nr.h Laurent Vivier
  2020-03-10 11:07 ` [PATCH 2/4] linux-user, aarch64: sync syscall numbers with kernel v5.5 Laurent Vivier
@ 2020-03-10 11:07 ` Laurent Vivier
  2020-03-10 17:27   ` [PATCH 3/4] linux-user, nios2: " Alistair Francis
  2020-03-10 11:07 ` [PATCH 4/4] linux-user, openrisc: " Laurent Vivier
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 12+ messages in thread
From: Laurent Vivier @ 2020-03-10 11:07 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio, Laurent Vivier,
	Alistair Francis

Use helper script scripts/gensyscalls.sh to generate the file.

This adds TARGET_NR_llseek that was missing and remove syscalls 1024
to 1079.

Add new syscalls from 288 (pkey_mprotect) to 434 (pidfd_open)

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/nios2/syscall_nr.h | 648 +++++++++++++++++-----------------
 1 file changed, 318 insertions(+), 330 deletions(-)

diff --git a/linux-user/nios2/syscall_nr.h b/linux-user/nios2/syscall_nr.h
index 8fb87864ca0b..47213bcd5456 100644
--- a/linux-user/nios2/syscall_nr.h
+++ b/linux-user/nios2/syscall_nr.h
@@ -1,334 +1,322 @@
+/*
+ * This file contains the system call numbers.
+ */
 #ifndef LINUX_USER_NIOS2_SYSCALL_NR_H
 #define LINUX_USER_NIOS2_SYSCALL_NR_H
 
-#define TARGET_NR_io_setup                  0
-#define TARGET_NR_io_destroy                1
-#define TARGET_NR_io_submit                 2
-#define TARGET_NR_io_cancel                 3
-#define TARGET_NR_io_getevents              4
-#define TARGET_NR_setxattr                  5
-#define TARGET_NR_lsetxattr                 6
-#define TARGET_NR_fsetxattr                 7
-#define TARGET_NR_getxattr                  8
-#define TARGET_NR_lgetxattr                 9
-#define TARGET_NR_fgetxattr                 10
-#define TARGET_NR_listxattr                 11
-#define TARGET_NR_llistxattr                12
-#define TARGET_NR_flistxattr                13
-#define TARGET_NR_removexattr               14
-#define TARGET_NR_lremovexattr              15
-#define TARGET_NR_fremovexattr              16
-#define TARGET_NR_getcwd                    17
-#define TARGET_NR_lookup_dcookie            18
-#define TARGET_NR_eventfd2                  19
-#define TARGET_NR_epoll_create1             20
-#define TARGET_NR_epoll_ctl                 21
-#define TARGET_NR_epoll_pwait               22
-#define TARGET_NR_dup                       23
-#define TARGET_NR_dup3                      24
-#define TARGET_NR_fcntl64                   25
-#define TARGET_NR_inotify_init1             26
-#define TARGET_NR_inotify_add_watch         27
-#define TARGET_NR_inotify_rm_watch          28
-#define TARGET_NR_ioctl                     29
-#define TARGET_NR_ioprio_set                30
-#define TARGET_NR_ioprio_get                31
-#define TARGET_NR_flock                     32
-#define TARGET_NR_mknodat                   33
-#define TARGET_NR_mkdirat                   34
-#define TARGET_NR_unlinkat                  35
-#define TARGET_NR_symlinkat                 36
-#define TARGET_NR_linkat                    37
-#define TARGET_NR_renameat                  38
-#define TARGET_NR_umount2                   39
-#define TARGET_NR_mount                     40
-#define TARGET_NR_pivot_root                41
-#define TARGET_NR_nfsservctl                42
-#define TARGET_NR_statfs64                  43
-#define TARGET_NR_fstatfs64                 44
-#define TARGET_NR_truncate64                45
-#define TARGET_NR_ftruncate64               46
-#define TARGET_NR_fallocate                 47
-#define TARGET_NR_faccessat                 48
-#define TARGET_NR_chdir                     49
-#define TARGET_NR_fchdir                    50
-#define TARGET_NR_chroot                    51
-#define TARGET_NR_fchmod                    52
-#define TARGET_NR_fchmodat                  53
-#define TARGET_NR_fchownat                  54
-#define TARGET_NR_fchown                    55
-#define TARGET_NR_openat                    56
-#define TARGET_NR_close                     57
-#define TARGET_NR_vhangup                   58
-#define TARGET_NR_pipe2                     59
-#define TARGET_NR_quotactl                  60
-#define TARGET_NR_getdents64                61
-#define TARGET_NR_read                      63
-#define TARGET_NR_write                     64
-#define TARGET_NR_readv                     65
-#define TARGET_NR_writev                    66
-#define TARGET_NR_pread64                   67
-#define TARGET_NR_pwrite64                  68
-#define TARGET_NR_preadv                    69
-#define TARGET_NR_pwritev                   70
-#define TARGET_NR_sendfile64                71
-#define TARGET_NR_pselect6                  72
-#define TARGET_NR_ppoll                     73
-#define TARGET_NR_signalfd4                 74
-#define TARGET_NR_vmsplice                  75
-#define TARGET_NR_splice                    76
-#define TARGET_NR_tee                       77
-#define TARGET_NR_readlinkat                78
-#define TARGET_NR_fstatat64                 79
-#define TARGET_NR_fstat64                   80
-#define TARGET_NR_sync                      81
-#define TARGET_NR_fsync                     82
-#define TARGET_NR_fdatasync                 83
-#define TARGET_NR_sync_file_range           84
-#define TARGET_NR_timerfd_create            85
-#define TARGET_NR_timerfd_settime           86
-#define TARGET_NR_timerfd_gettime           87
-#define TARGET_NR_utimensat                 88
-#define TARGET_NR_acct                      89
-#define TARGET_NR_capget                    90
-#define TARGET_NR_capset                    91
-#define TARGET_NR_personality               92
-#define TARGET_NR_exit                      93
-#define TARGET_NR_exit_group                94
-#define TARGET_NR_waitid                    95
-#define TARGET_NR_set_tid_address           96
-#define TARGET_NR_unshare                   97
-#define TARGET_NR_futex                     98
-#define TARGET_NR_set_robust_list           99
-#define TARGET_NR_get_robust_list           100
-#define TARGET_NR_nanosleep                 101
-#define TARGET_NR_getitimer                 102
-#define TARGET_NR_setitimer                 103
-#define TARGET_NR_kexec_load                104
-#define TARGET_NR_init_module               105
-#define TARGET_NR_delete_module             106
-#define TARGET_NR_timer_create              107
-#define TARGET_NR_timer_gettime             108
-#define TARGET_NR_timer_getoverrun          109
-#define TARGET_NR_timer_settime             110
-#define TARGET_NR_timer_delete              111
-#define TARGET_NR_clock_settime             112
-#define TARGET_NR_clock_gettime             113
-#define TARGET_NR_clock_getres              114
-#define TARGET_NR_clock_nanosleep           115
-#define TARGET_NR_syslog                    116
-#define TARGET_NR_ptrace                    117
-#define TARGET_NR_sched_setparam            118
-#define TARGET_NR_sched_setscheduler        119
-#define TARGET_NR_sched_getscheduler        120
-#define TARGET_NR_sched_getparam            121
-#define TARGET_NR_sched_setaffinity         122
-#define TARGET_NR_sched_getaffinity         123
-#define TARGET_NR_sched_yield               124
-#define TARGET_NR_sched_get_priority_max    125
-#define TARGET_NR_sched_get_priority_min    126
-#define TARGET_NR_sched_rr_get_interval     127
-#define TARGET_NR_restart_syscall           128
-#define TARGET_NR_kill                      129
-#define TARGET_NR_tkill                     130
-#define TARGET_NR_tgkill                    131
-#define TARGET_NR_sigaltstack               132
-#define TARGET_NR_rt_sigsuspend             133
-#define TARGET_NR_rt_sigaction              134
-#define TARGET_NR_rt_sigprocmask            135
-#define TARGET_NR_rt_sigpending             136
-#define TARGET_NR_rt_sigtimedwait           137
-#define TARGET_NR_rt_sigqueueinfo           138
-#define TARGET_NR_rt_sigreturn              139
-#define TARGET_NR_setpriority               140
-#define TARGET_NR_getpriority               141
-#define TARGET_NR_reboot                    142
-#define TARGET_NR_setregid                  143
-#define TARGET_NR_setgid                    144
-#define TARGET_NR_setreuid                  145
-#define TARGET_NR_setuid                    146
-#define TARGET_NR_setresuid                 147
-#define TARGET_NR_getresuid                 148
-#define TARGET_NR_setresgid                 149
-#define TARGET_NR_getresgid                 150
-#define TARGET_NR_setfsuid                  151
-#define TARGET_NR_setfsgid                  152
-#define TARGET_NR_times                     153
-#define TARGET_NR_setpgid                   154
-#define TARGET_NR_getpgid                   155
-#define TARGET_NR_getsid                    156
-#define TARGET_NR_setsid                    157
-#define TARGET_NR_getgroups                 158
-#define TARGET_NR_setgroups                 159
-#define TARGET_NR_uname                     160
-#define TARGET_NR_sethostname               161
-#define TARGET_NR_setdomainname             162
-#define TARGET_NR_getrlimit                 163
-#define TARGET_NR_setrlimit                 164
-#define TARGET_NR_getrusage                 165
-#define TARGET_NR_umask                     166
-#define TARGET_NR_prctl                     167
-#define TARGET_NR_getcpu                    168
-#define TARGET_NR_gettimeofday              169
-#define TARGET_NR_settimeofday              170
-#define TARGET_NR_adjtimex                  171
-#define TARGET_NR_getpid                    172
-#define TARGET_NR_getppid                   173
-#define TARGET_NR_getuid                    174
-#define TARGET_NR_geteuid                   175
-#define TARGET_NR_getgid                    176
-#define TARGET_NR_getegid                   177
-#define TARGET_NR_gettid                    178
-#define TARGET_NR_sysinfo                   179
-#define TARGET_NR_mq_open                   180
-#define TARGET_NR_mq_unlink                 181
-#define TARGET_NR_mq_timedsend              182
-#define TARGET_NR_mq_timedreceive           183
-#define TARGET_NR_mq_notify                 184
-#define TARGET_NR_mq_getsetattr             185
-#define TARGET_NR_msgget                    186
-#define TARGET_NR_msgctl                    187
-#define TARGET_NR_msgrcv                    188
-#define TARGET_NR_msgsnd                    189
-#define TARGET_NR_semget                    190
-#define TARGET_NR_semctl                    191
-#define TARGET_NR_semtimedop                192
-#define TARGET_NR_semop                     193
-#define TARGET_NR_shmget                    194
-#define TARGET_NR_shmctl                    195
-#define TARGET_NR_shmat                     196
-#define TARGET_NR_shmdt                     197
-#define TARGET_NR_socket                    198
-#define TARGET_NR_socketpair                199
-#define TARGET_NR_bind                      200
-#define TARGET_NR_listen                    201
-#define TARGET_NR_accept                    202
-#define TARGET_NR_connect                   203
-#define TARGET_NR_getsockname               204
-#define TARGET_NR_getpeername               205
-#define TARGET_NR_sendto                    206
-#define TARGET_NR_recvfrom                  207
-#define TARGET_NR_setsockopt                208
-#define TARGET_NR_getsockopt                209
-#define TARGET_NR_shutdown                  210
-#define TARGET_NR_sendmsg                   211
-#define TARGET_NR_recvmsg                   212
-#define TARGET_NR_readahead                 213
-#define TARGET_NR_brk                       214
-#define TARGET_NR_munmap                    215
-#define TARGET_NR_mremap                    216
-#define TARGET_NR_add_key                   217
-#define TARGET_NR_request_key               218
-#define TARGET_NR_keyctl                    219
-#define TARGET_NR_clone                     220
-#define TARGET_NR_execve                    221
-#define TARGET_NR_mmap2                     222
-#define TARGET_NR_fadvise64_64              223
-#define TARGET_NR_swapon                    224
-#define TARGET_NR_swapoff                   225
-#define TARGET_NR_mprotect                  226
-#define TARGET_NR_msync                     227
-#define TARGET_NR_mlock                     228
-#define TARGET_NR_munlock                   229
-#define TARGET_NR_mlockall                  230
-#define TARGET_NR_munlockall                231
-#define TARGET_NR_mincore                   232
-#define TARGET_NR_madvise                   233
-#define TARGET_NR_remap_file_pages          234
-#define TARGET_NR_mbind                     235
-#define TARGET_NR_get_mempolicy             236
-#define TARGET_NR_set_mempolicy             237
-#define TARGET_NR_migrate_pages             238
-#define TARGET_NR_move_pages                239
-#define TARGET_NR_rt_tgsigqueueinfo         240
-#define TARGET_NR_perf_event_open           241
-#define TARGET_NR_accept4                   242
-#define TARGET_NR_recvmmsg                  243
-#define TARGET_NR_cacheflush                244
-#define TARGET_NR_arch_specific_syscall     244
-#define TARGET_NR_wait4                     260
-#define TARGET_NR_prlimit64                 261
-#define TARGET_NR_fanotify_init             262
-#define TARGET_NR_fanotify_mark             263
-#define TARGET_NR_name_to_handle_at         264
-#define TARGET_NR_open_by_handle_at         265
-#define TARGET_NR_clock_adjtime             266
-#define TARGET_NR_syncfs                    267
-#define TARGET_NR_setns                     268
-#define TARGET_NR_sendmmsg                  269
-#define TARGET_NR_process_vm_readv          270
-#define TARGET_NR_process_vm_writev         271
-#define TARGET_NR_kcmp                      272
-#define TARGET_NR_finit_module              273
-#define TARGET_NR_sched_setattr             274
-#define TARGET_NR_sched_getattr             275
-#define TARGET_NR_renameat2                 276
-#define TARGET_NR_seccomp                   277
-#define TARGET_NR_getrandom                 278
-#define TARGET_NR_memfd_create              279
-#define TARGET_NR_bpf                       280
-#define TARGET_NR_execveat                  281
-#define TARGET_NR_userfaultfd               282
-#define TARGET_NR_membarrier                283
-#define TARGET_NR_mlock2                    284
-#define TARGET_NR_copy_file_range           285
-#define TARGET_NR_preadv2                   286
-#define TARGET_NR_pwritev2                  287
-#define TARGET_NR_open                      1024
-#define TARGET_NR_link                      1025
-#define TARGET_NR_unlink                    1026
-#define TARGET_NR_mknod                     1027
-#define TARGET_NR_chmod                     1028
-#define TARGET_NR_chown                     1029
-#define TARGET_NR_mkdir                     1030
-#define TARGET_NR_rmdir                     1031
-#define TARGET_NR_lchown                    1032
-#define TARGET_NR_access                    1033
-#define TARGET_NR_rename                    1034
-#define TARGET_NR_readlink                  1035
-#define TARGET_NR_symlink                   1036
-#define TARGET_NR_utimes                    1037
-#define TARGET_NR_3264_stat                 1038
-#define TARGET_NR_3264_lstat                1039
-#define TARGET_NR_pipe                      1040
-#define TARGET_NR_dup2                      1041
-#define TARGET_NR_epoll_create              1042
-#define TARGET_NR_inotify_init              1043
-#define TARGET_NR_eventfd                   1044
-#define TARGET_NR_signalfd                  1045
-#define TARGET_NR_sendfile                  1046
-#define TARGET_NR_ftruncate                 1047
-#define TARGET_NR_truncate                  1048
-#define TARGET_NR_stat                      1049
-#define TARGET_NR_lstat                     1050
-#define TARGET_NR_fstat                     1051
-#define TARGET_NR_fcntl                     1052
-#define TARGET_NR_fadvise64                 1053
-#define TARGET_NR_newfstatat                1054
-#define TARGET_NR_fstatfs                   1055
-#define TARGET_NR_statfs                    1056
-#define TARGET_NR_lseek                     1057
-#define TARGET_NR_mmap                      1058
-#define TARGET_NR_alarm                     1059
-#define TARGET_NR_getpgrp                   1060
-#define TARGET_NR_pause                     1061
-#define TARGET_NR_time                      1062
-#define TARGET_NR_utime                     1063
-#define TARGET_NR_creat                     1064
-#define TARGET_NR_getdents                  1065
-#define TARGET_NR_futimesat                 1066
-#define TARGET_NR_select                    1067
-#define TARGET_NR_poll                      1068
-#define TARGET_NR_epoll_wait                1069
-#define TARGET_NR_ustat                     1070
-#define TARGET_NR_vfork                     1071
-#define TARGET_NR_oldwait4                  1072
-#define TARGET_NR_recv                      1073
-#define TARGET_NR_send                      1074
-#define TARGET_NR_bdflush                   1075
-#define TARGET_NR_umount                    1076
-#define TARGET_NR_uselib                    1077
-#define TARGET_NR__sysctl                   1078
-#define TARGET_NR_fork                      1079
+#define TARGET_NR_cacheflush (TARGET_NR_arch_specific_syscall)
+#define TARGET_NR_io_setup 0
+#define TARGET_NR_io_destroy 1
+#define TARGET_NR_io_submit 2
+#define TARGET_NR_io_cancel 3
+#define TARGET_NR_io_getevents 4
+#define TARGET_NR_setxattr 5
+#define TARGET_NR_lsetxattr 6
+#define TARGET_NR_fsetxattr 7
+#define TARGET_NR_getxattr 8
+#define TARGET_NR_lgetxattr 9
+#define TARGET_NR_fgetxattr 10
+#define TARGET_NR_listxattr 11
+#define TARGET_NR_llistxattr 12
+#define TARGET_NR_flistxattr 13
+#define TARGET_NR_removexattr 14
+#define TARGET_NR_lremovexattr 15
+#define TARGET_NR_fremovexattr 16
+#define TARGET_NR_getcwd 17
+#define TARGET_NR_lookup_dcookie 18
+#define TARGET_NR_eventfd2 19
+#define TARGET_NR_epoll_create1 20
+#define TARGET_NR_epoll_ctl 21
+#define TARGET_NR_epoll_pwait 22
+#define TARGET_NR_dup 23
+#define TARGET_NR_dup3 24
+#define TARGET_NR_fcntl64 25
+#define TARGET_NR_inotify_init1 26
+#define TARGET_NR_inotify_add_watch 27
+#define TARGET_NR_inotify_rm_watch 28
+#define TARGET_NR_ioctl 29
+#define TARGET_NR_ioprio_set 30
+#define TARGET_NR_ioprio_get 31
+#define TARGET_NR_flock 32
+#define TARGET_NR_mknodat 33
+#define TARGET_NR_mkdirat 34
+#define TARGET_NR_unlinkat 35
+#define TARGET_NR_symlinkat 36
+#define TARGET_NR_linkat 37
+#define TARGET_NR_renameat 38
+#define TARGET_NR_umount2 39
+#define TARGET_NR_mount 40
+#define TARGET_NR_pivot_root 41
+#define TARGET_NR_nfsservctl 42
+#define TARGET_NR_statfs64 43
+#define TARGET_NR_fstatfs64 44
+#define TARGET_NR_truncate64 45
+#define TARGET_NR_ftruncate64 46
+#define TARGET_NR_fallocate 47
+#define TARGET_NR_faccessat 48
+#define TARGET_NR_chdir 49
+#define TARGET_NR_fchdir 50
+#define TARGET_NR_chroot 51
+#define TARGET_NR_fchmod 52
+#define TARGET_NR_fchmodat 53
+#define TARGET_NR_fchownat 54
+#define TARGET_NR_fchown 55
+#define TARGET_NR_openat 56
+#define TARGET_NR_close 57
+#define TARGET_NR_vhangup 58
+#define TARGET_NR_pipe2 59
+#define TARGET_NR_quotactl 60
+#define TARGET_NR_getdents64 61
+#define TARGET_NR_llseek 62
+#define TARGET_NR_read 63
+#define TARGET_NR_write 64
+#define TARGET_NR_readv 65
+#define TARGET_NR_writev 66
+#define TARGET_NR_pread64 67
+#define TARGET_NR_pwrite64 68
+#define TARGET_NR_preadv 69
+#define TARGET_NR_pwritev 70
+#define TARGET_NR_sendfile64 71
+#define TARGET_NR_pselect6 72
+#define TARGET_NR_ppoll 73
+#define TARGET_NR_signalfd4 74
+#define TARGET_NR_vmsplice 75
+#define TARGET_NR_splice 76
+#define TARGET_NR_tee 77
+#define TARGET_NR_readlinkat 78
+#define TARGET_NR_fstatat64 79
+#define TARGET_NR_fstat64 80
+#define TARGET_NR_sync 81
+#define TARGET_NR_fsync 82
+#define TARGET_NR_fdatasync 83
+#define TARGET_NR_sync_file_range 84
+#define TARGET_NR_timerfd_create 85
+#define TARGET_NR_timerfd_settime 86
+#define TARGET_NR_timerfd_gettime 87
+#define TARGET_NR_utimensat 88
+#define TARGET_NR_acct 89
+#define TARGET_NR_capget 90
+#define TARGET_NR_capset 91
+#define TARGET_NR_personality 92
+#define TARGET_NR_exit 93
+#define TARGET_NR_exit_group 94
+#define TARGET_NR_waitid 95
+#define TARGET_NR_set_tid_address 96
+#define TARGET_NR_unshare 97
+#define TARGET_NR_futex 98
+#define TARGET_NR_set_robust_list 99
+#define TARGET_NR_get_robust_list 100
+#define TARGET_NR_nanosleep 101
+#define TARGET_NR_getitimer 102
+#define TARGET_NR_setitimer 103
+#define TARGET_NR_kexec_load 104
+#define TARGET_NR_init_module 105
+#define TARGET_NR_delete_module 106
+#define TARGET_NR_timer_create 107
+#define TARGET_NR_timer_gettime 108
+#define TARGET_NR_timer_getoverrun 109
+#define TARGET_NR_timer_settime 110
+#define TARGET_NR_timer_delete 111
+#define TARGET_NR_clock_settime 112
+#define TARGET_NR_clock_gettime 113
+#define TARGET_NR_clock_getres 114
+#define TARGET_NR_clock_nanosleep 115
+#define TARGET_NR_syslog 116
+#define TARGET_NR_ptrace 117
+#define TARGET_NR_sched_setparam 118
+#define TARGET_NR_sched_setscheduler 119
+#define TARGET_NR_sched_getscheduler 120
+#define TARGET_NR_sched_getparam 121
+#define TARGET_NR_sched_setaffinity 122
+#define TARGET_NR_sched_getaffinity 123
+#define TARGET_NR_sched_yield 124
+#define TARGET_NR_sched_get_priority_max 125
+#define TARGET_NR_sched_get_priority_min 126
+#define TARGET_NR_sched_rr_get_interval 127
+#define TARGET_NR_restart_syscall 128
+#define TARGET_NR_kill 129
+#define TARGET_NR_tkill 130
+#define TARGET_NR_tgkill 131
+#define TARGET_NR_sigaltstack 132
+#define TARGET_NR_rt_sigsuspend 133
+#define TARGET_NR_rt_sigaction 134
+#define TARGET_NR_rt_sigprocmask 135
+#define TARGET_NR_rt_sigpending 136
+#define TARGET_NR_rt_sigtimedwait 137
+#define TARGET_NR_rt_sigqueueinfo 138
+#define TARGET_NR_rt_sigreturn 139
+#define TARGET_NR_setpriority 140
+#define TARGET_NR_getpriority 141
+#define TARGET_NR_reboot 142
+#define TARGET_NR_setregid 143
+#define TARGET_NR_setgid 144
+#define TARGET_NR_setreuid 145
+#define TARGET_NR_setuid 146
+#define TARGET_NR_setresuid 147
+#define TARGET_NR_getresuid 148
+#define TARGET_NR_setresgid 149
+#define TARGET_NR_getresgid 150
+#define TARGET_NR_setfsuid 151
+#define TARGET_NR_setfsgid 152
+#define TARGET_NR_times 153
+#define TARGET_NR_setpgid 154
+#define TARGET_NR_getpgid 155
+#define TARGET_NR_getsid 156
+#define TARGET_NR_setsid 157
+#define TARGET_NR_getgroups 158
+#define TARGET_NR_setgroups 159
+#define TARGET_NR_uname 160
+#define TARGET_NR_sethostname 161
+#define TARGET_NR_setdomainname 162
+#define TARGET_NR_getrlimit 163
+#define TARGET_NR_setrlimit 164
+#define TARGET_NR_getrusage 165
+#define TARGET_NR_umask 166
+#define TARGET_NR_prctl 167
+#define TARGET_NR_getcpu 168
+#define TARGET_NR_gettimeofday 169
+#define TARGET_NR_settimeofday 170
+#define TARGET_NR_adjtimex 171
+#define TARGET_NR_getpid 172
+#define TARGET_NR_getppid 173
+#define TARGET_NR_getuid 174
+#define TARGET_NR_geteuid 175
+#define TARGET_NR_getgid 176
+#define TARGET_NR_getegid 177
+#define TARGET_NR_gettid 178
+#define TARGET_NR_sysinfo 179
+#define TARGET_NR_mq_open 180
+#define TARGET_NR_mq_unlink 181
+#define TARGET_NR_mq_timedsend 182
+#define TARGET_NR_mq_timedreceive 183
+#define TARGET_NR_mq_notify 184
+#define TARGET_NR_mq_getsetattr 185
+#define TARGET_NR_msgget 186
+#define TARGET_NR_msgctl 187
+#define TARGET_NR_msgrcv 188
+#define TARGET_NR_msgsnd 189
+#define TARGET_NR_semget 190
+#define TARGET_NR_semctl 191
+#define TARGET_NR_semtimedop 192
+#define TARGET_NR_semop 193
+#define TARGET_NR_shmget 194
+#define TARGET_NR_shmctl 195
+#define TARGET_NR_shmat 196
+#define TARGET_NR_shmdt 197
+#define TARGET_NR_socket 198
+#define TARGET_NR_socketpair 199
+#define TARGET_NR_bind 200
+#define TARGET_NR_listen 201
+#define TARGET_NR_accept 202
+#define TARGET_NR_connect 203
+#define TARGET_NR_getsockname 204
+#define TARGET_NR_getpeername 205
+#define TARGET_NR_sendto 206
+#define TARGET_NR_recvfrom 207
+#define TARGET_NR_setsockopt 208
+#define TARGET_NR_getsockopt 209
+#define TARGET_NR_shutdown 210
+#define TARGET_NR_sendmsg 211
+#define TARGET_NR_recvmsg 212
+#define TARGET_NR_readahead 213
+#define TARGET_NR_brk 214
+#define TARGET_NR_munmap 215
+#define TARGET_NR_mremap 216
+#define TARGET_NR_add_key 217
+#define TARGET_NR_request_key 218
+#define TARGET_NR_keyctl 219
+#define TARGET_NR_clone 220
+#define TARGET_NR_execve 221
+#define TARGET_NR_mmap2 222
+#define TARGET_NR_fadvise64_64 223
+#define TARGET_NR_swapon 224
+#define TARGET_NR_swapoff 225
+#define TARGET_NR_mprotect 226
+#define TARGET_NR_msync 227
+#define TARGET_NR_mlock 228
+#define TARGET_NR_munlock 229
+#define TARGET_NR_mlockall 230
+#define TARGET_NR_munlockall 231
+#define TARGET_NR_mincore 232
+#define TARGET_NR_madvise 233
+#define TARGET_NR_remap_file_pages 234
+#define TARGET_NR_mbind 235
+#define TARGET_NR_get_mempolicy 236
+#define TARGET_NR_set_mempolicy 237
+#define TARGET_NR_migrate_pages 238
+#define TARGET_NR_move_pages 239
+#define TARGET_NR_rt_tgsigqueueinfo 240
+#define TARGET_NR_perf_event_open 241
+#define TARGET_NR_accept4 242
+#define TARGET_NR_recvmmsg 243
+#define TARGET_NR_arch_specific_syscall 244
+#define TARGET_NR_wait4 260
+#define TARGET_NR_prlimit64 261
+#define TARGET_NR_fanotify_init 262
+#define TARGET_NR_fanotify_mark 263
+#define TARGET_NR_name_to_handle_at 264
+#define TARGET_NR_open_by_handle_at 265
+#define TARGET_NR_clock_adjtime 266
+#define TARGET_NR_syncfs 267
+#define TARGET_NR_setns 268
+#define TARGET_NR_sendmmsg 269
+#define TARGET_NR_process_vm_readv 270
+#define TARGET_NR_process_vm_writev 271
+#define TARGET_NR_kcmp 272
+#define TARGET_NR_finit_module 273
+#define TARGET_NR_sched_setattr 274
+#define TARGET_NR_sched_getattr 275
+#define TARGET_NR_renameat2 276
+#define TARGET_NR_seccomp 277
+#define TARGET_NR_getrandom 278
+#define TARGET_NR_memfd_create 279
+#define TARGET_NR_bpf 280
+#define TARGET_NR_execveat 281
+#define TARGET_NR_userfaultfd 282
+#define TARGET_NR_membarrier 283
+#define TARGET_NR_mlock2 284
+#define TARGET_NR_copy_file_range 285
+#define TARGET_NR_preadv2 286
+#define TARGET_NR_pwritev2 287
+#define TARGET_NR_pkey_mprotect 288
+#define TARGET_NR_pkey_alloc 289
+#define TARGET_NR_pkey_free 290
+#define TARGET_NR_statx 291
+#define TARGET_NR_io_pgetevents 292
+#define TARGET_NR_rseq 293
+#define TARGET_NR_kexec_file_load 294
+#define TARGET_NR_clock_gettime64 403
+#define TARGET_NR_clock_settime64 404
+#define TARGET_NR_clock_adjtime64 405
+#define TARGET_NR_clock_getres_time64 406
+#define TARGET_NR_clock_nanosleep_time64 407
+#define TARGET_NR_timer_gettime64 408
+#define TARGET_NR_timer_settime64 409
+#define TARGET_NR_timerfd_gettime64 410
+#define TARGET_NR_timerfd_settime64 411
+#define TARGET_NR_utimensat_time64 412
+#define TARGET_NR_pselect6_time64 413
+#define TARGET_NR_ppoll_time64 414
+#define TARGET_NR_io_pgetevents_time64 416
+#define TARGET_NR_recvmmsg_time64 417
+#define TARGET_NR_mq_timedsend_time64 418
+#define TARGET_NR_mq_timedreceive_time64 419
+#define TARGET_NR_semtimedop_time64 420
+#define TARGET_NR_rt_sigtimedwait_time64 421
+#define TARGET_NR_futex_time64 422
+#define TARGET_NR_sched_rr_get_interval_time64 423
+#define TARGET_NR_pidfd_send_signal 424
+#define TARGET_NR_io_uring_setup 425
+#define TARGET_NR_io_uring_enter 426
+#define TARGET_NR_io_uring_register 427
+#define TARGET_NR_open_tree 428
+#define TARGET_NR_move_mount 429
+#define TARGET_NR_fsopen 430
+#define TARGET_NR_fsconfig 431
+#define TARGET_NR_fsmount 432
+#define TARGET_NR_fspick 433
+#define TARGET_NR_pidfd_open 434
+#define TARGET_NR_syscalls 436
+
+#endif /* LINUX_USER_NIOS2_SYSCALL_NR_H */
 
-#endif
-- 
2.24.1



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 4/4] linux-user, openrisc: sync syscall numbers with kernel v5.5
  2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
                   ` (2 preceding siblings ...)
  2020-03-10 11:07 ` [PATCH 3/4] linux-user,nios2: " Laurent Vivier
@ 2020-03-10 11:07 ` Laurent Vivier
  2020-03-10 17:29   ` Alistair Francis
  2020-03-10 11:54 ` [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h no-reply
  2020-03-13 22:05 ` Laurent Vivier
  5 siblings, 1 reply; 12+ messages in thread
From: Laurent Vivier @ 2020-03-10 11:07 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio, Laurent Vivier,
	Alistair Francis

Use helper script scripts/gensyscalls.sh to generate the file.

Add TARGET_NR_or1k_atomic
Remove useless comments and blank lines.
Define diretly the __NR_XXX64 syscalls rather than using the
intermediate __NR3264 definition.

Remove wrong cut'n'paste (like "#ifdef __ARCH_WANT_SYNC_FILE_RANGE2")

Add new syscalls from 286 (preadv) to 434 (pidfd_open).

Remove obsolete syscalls 1204 (open) to 1079 (fork).

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/openrisc/syscall_nr.h | 307 ++++++-------------------------
 1 file changed, 60 insertions(+), 247 deletions(-)

diff --git a/linux-user/openrisc/syscall_nr.h b/linux-user/openrisc/syscall_nr.h
index 7763dbcfd8b3..a4b614005d69 100644
--- a/linux-user/openrisc/syscall_nr.h
+++ b/linux-user/openrisc/syscall_nr.h
@@ -1,13 +1,15 @@
+/*
+ * This file contains the system call numbers.
+ */
 #ifndef LINUX_USER_OPENRISC_SYSCALL_NR_H
 #define LINUX_USER_OPENRISC_SYSCALL_NR_H
 
 #define TARGET_NR_io_setup 0
+#define TARGET_NR_or1k_atomic TARGET_NR_arch_specific_syscall
 #define TARGET_NR_io_destroy 1
 #define TARGET_NR_io_submit 2
 #define TARGET_NR_io_cancel 3
 #define TARGET_NR_io_getevents 4
-
-/* fs/xattr.c */
 #define TARGET_NR_setxattr 5
 #define TARGET_NR_lsetxattr 6
 #define TARGET_NR_fsetxattr 7
@@ -20,63 +22,36 @@
 #define TARGET_NR_removexattr 14
 #define TARGET_NR_lremovexattr 15
 #define TARGET_NR_fremovexattr 16
-
-/* fs/dcache.c */
 #define TARGET_NR_getcwd 17
-
-/* fs/cookies.c */
 #define TARGET_NR_lookup_dcookie 18
-
-/* fs/eventfd.c */
 #define TARGET_NR_eventfd2 19
-
-/* fs/eventpoll.c */
 #define TARGET_NR_epoll_create1 20
 #define TARGET_NR_epoll_ctl 21
 #define TARGET_NR_epoll_pwait 22
-
-/* fs/fcntl.c */
 #define TARGET_NR_dup 23
 #define TARGET_NR_dup3 24
-#define TARGET_NR_3264_fcntl 25
-
-/* fs/inotify_user.c */
+#define TARGET_NR_fcntl64 25
 #define TARGET_NR_inotify_init1 26
 #define TARGET_NR_inotify_add_watch 27
 #define TARGET_NR_inotify_rm_watch 28
-
-/* fs/ioctl.c */
 #define TARGET_NR_ioctl 29
-
-/* fs/ioprio.c */
 #define TARGET_NR_ioprio_set 30
 #define TARGET_NR_ioprio_get 31
-
-/* fs/locks.c */
 #define TARGET_NR_flock 32
-
-/* fs/namei.c */
 #define TARGET_NR_mknodat 33
 #define TARGET_NR_mkdirat 34
 #define TARGET_NR_unlinkat 35
 #define TARGET_NR_symlinkat 36
 #define TARGET_NR_linkat 37
 #define TARGET_NR_renameat 38
-
-/* fs/namespace.c */
 #define TARGET_NR_umount2 39
 #define TARGET_NR_mount 40
 #define TARGET_NR_pivot_root 41
-
-/* fs/nfsctl.c */
 #define TARGET_NR_nfsservctl 42
-
-/* fs/open.c */
-#define TARGET_NR_3264_statfs 43
-#define TARGET_NR_3264_fstatfs 44
-#define TARGET_NR_3264_truncate 45
-#define TARGET_NR_3264_ftruncate 46
-
+#define TARGET_NR_statfs64 43
+#define TARGET_NR_fstatfs64 44
+#define TARGET_NR_truncate64 45
+#define TARGET_NR_ftruncate64 46
 #define TARGET_NR_fallocate 47
 #define TARGET_NR_faccessat 48
 #define TARGET_NR_chdir 49
@@ -89,18 +64,10 @@
 #define TARGET_NR_openat 56
 #define TARGET_NR_close 57
 #define TARGET_NR_vhangup 58
-
-/* fs/pipe.c */
 #define TARGET_NR_pipe2 59
-
-/* fs/quota.c */
 #define TARGET_NR_quotactl 60
-
-/* fs/readdir.c */
 #define TARGET_NR_getdents64 61
-
-/* fs/read_write.c */
-#define TARGET_NR_3264_lseek 62
+#define TARGET_NR_llseek 62
 #define TARGET_NR_read 63
 #define TARGET_NR_write 64
 #define TARGET_NR_readv 65
@@ -109,85 +76,42 @@
 #define TARGET_NR_pwrite64 68
 #define TARGET_NR_preadv 69
 #define TARGET_NR_pwritev 70
-
-/* fs/sendfile.c */
-#define TARGET_NR_3264_sendfile 71
-
-/* fs/select.c */
+#define TARGET_NR_sendfile64 71
 #define TARGET_NR_pselect6 72
 #define TARGET_NR_ppoll 73
-
-/* fs/signalfd.c */
 #define TARGET_NR_signalfd4 74
-
-/* fs/splice.c */
 #define TARGET_NR_vmsplice 75
 #define TARGET_NR_splice 76
 #define TARGET_NR_tee 77
-
-/* fs/stat.c */
 #define TARGET_NR_readlinkat 78
-#define TARGET_NR_3264_fstatat 79
-#define TARGET_NR_3264_fstat 80
-
-/* fs/sync.c */
+#define TARGET_NR_fstatat64 79
+#define TARGET_NR_fstat64 80
 #define TARGET_NR_sync 81
 #define TARGET_NR_fsync 82
 #define TARGET_NR_fdatasync 83
-
-#ifdef __ARCH_WANT_SYNC_FILE_RANGE2
-#define TARGET_NR_sync_file_range2 84
-#else
 #define TARGET_NR_sync_file_range 84
-#endif
-
-/* fs/timerfd.c */
 #define TARGET_NR_timerfd_create 85
 #define TARGET_NR_timerfd_settime 86
 #define TARGET_NR_timerfd_gettime 87
-
-/* fs/utimes.c */
 #define TARGET_NR_utimensat 88
-
-/* kernel/acct.c */
 #define TARGET_NR_acct 89
-
-/* kernel/capability.c */
 #define TARGET_NR_capget 90
 #define TARGET_NR_capset 91
-
-/* kernel/exec_domain.c */
 #define TARGET_NR_personality 92
-
-/* kernel/exit.c */
 #define TARGET_NR_exit 93
 #define TARGET_NR_exit_group 94
 #define TARGET_NR_waitid 95
-
-/* kernel/fork.c */
 #define TARGET_NR_set_tid_address 96
 #define TARGET_NR_unshare 97
-
-/* kernel/futex.c */
 #define TARGET_NR_futex 98
 #define TARGET_NR_set_robust_list 99
 #define TARGET_NR_get_robust_list 100
-
-/* kernel/hrtimer.c */
 #define TARGET_NR_nanosleep 101
-
-/* kernel/itimer.c */
 #define TARGET_NR_getitimer 102
 #define TARGET_NR_setitimer 103
-
-/* kernel/kexec.c */
 #define TARGET_NR_kexec_load 104
-
-/* kernel/module.c */
 #define TARGET_NR_init_module 105
 #define TARGET_NR_delete_module 106
-
-/* kernel/posix-timers.c */
 #define TARGET_NR_timer_create 107
 #define TARGET_NR_timer_gettime 108
 #define TARGET_NR_timer_getoverrun 109
@@ -197,14 +121,8 @@
 #define TARGET_NR_clock_gettime 113
 #define TARGET_NR_clock_getres 114
 #define TARGET_NR_clock_nanosleep 115
-
-/* kernel/printk.c */
 #define TARGET_NR_syslog 116
-
-/* kernel/ptrace.c */
 #define TARGET_NR_ptrace 117
-
-/* kernel/sched.c */
 #define TARGET_NR_sched_setparam 118
 #define TARGET_NR_sched_setscheduler 119
 #define TARGET_NR_sched_getscheduler 120
@@ -215,8 +133,6 @@
 #define TARGET_NR_sched_get_priority_max 125
 #define TARGET_NR_sched_get_priority_min 126
 #define TARGET_NR_sched_rr_get_interval 127
-
-/* kernel/signal.c */
 #define TARGET_NR_restart_syscall 128
 #define TARGET_NR_kill 129
 #define TARGET_NR_tkill 130
@@ -229,8 +145,6 @@
 #define TARGET_NR_rt_sigtimedwait 137
 #define TARGET_NR_rt_sigqueueinfo 138
 #define TARGET_NR_rt_sigreturn 139
-
-/* kernel/sys.c */
 #define TARGET_NR_setpriority 140
 #define TARGET_NR_getpriority 141
 #define TARGET_NR_reboot 142
@@ -260,13 +174,9 @@
 #define TARGET_NR_umask 166
 #define TARGET_NR_prctl 167
 #define TARGET_NR_getcpu 168
-
-/* kernel/time.c */
 #define TARGET_NR_gettimeofday 169
 #define TARGET_NR_settimeofday 170
 #define TARGET_NR_adjtimex 171
-
-/* kernel/timer.c */
 #define TARGET_NR_getpid 172
 #define TARGET_NR_getppid 173
 #define TARGET_NR_getuid 174
@@ -275,34 +185,24 @@
 #define TARGET_NR_getegid 177
 #define TARGET_NR_gettid 178
 #define TARGET_NR_sysinfo 179
-
-/* ipc/mqueue.c */
 #define TARGET_NR_mq_open 180
 #define TARGET_NR_mq_unlink 181
 #define TARGET_NR_mq_timedsend 182
 #define TARGET_NR_mq_timedreceive 183
 #define TARGET_NR_mq_notify 184
 #define TARGET_NR_mq_getsetattr 185
-
-/* ipc/msg.c */
 #define TARGET_NR_msgget 186
 #define TARGET_NR_msgctl 187
 #define TARGET_NR_msgrcv 188
 #define TARGET_NR_msgsnd 189
-
-/* ipc/sem.c */
 #define TARGET_NR_semget 190
 #define TARGET_NR_semctl 191
 #define TARGET_NR_semtimedop 192
 #define TARGET_NR_semop 193
-
-/* ipc/shm.c */
 #define TARGET_NR_shmget 194
 #define TARGET_NR_shmctl 195
 #define TARGET_NR_shmat 196
 #define TARGET_NR_shmdt 197
-
-/* net/socket.c */
 #define TARGET_NR_socket 198
 #define TARGET_NR_socketpair 199
 #define TARGET_NR_bind 200
@@ -318,30 +218,17 @@
 #define TARGET_NR_shutdown 210
 #define TARGET_NR_sendmsg 211
 #define TARGET_NR_recvmsg 212
-
-/* mm/filemap.c */
 #define TARGET_NR_readahead 213
-
-/* mm/nommu.c, also with MMU */
 #define TARGET_NR_brk 214
 #define TARGET_NR_munmap 215
 #define TARGET_NR_mremap 216
-
-/* security/keys/keyctl.c */
 #define TARGET_NR_add_key 217
 #define TARGET_NR_request_key 218
 #define TARGET_NR_keyctl 219
-
-/* arch/example/kernel/sys_example.c */
 #define TARGET_NR_clone 220
 #define TARGET_NR_execve 221
-
-#define TARGET_NR_3264_mmap 222
-/* mm/fadvise.c */
-#define TARGET_NR_3264_fadvise64 223
-
-/* mm/, CONFIG_MMU only */
-#ifndef __ARCH_NOMMU
+#define TARGET_NR_mmap2 222
+#define TARGET_NR_fadvise64_64 223
 #define TARGET_NR_swapon 224
 #define TARGET_NR_swapoff 225
 #define TARGET_NR_mprotect 226
@@ -358,25 +245,17 @@
 #define TARGET_NR_set_mempolicy 237
 #define TARGET_NR_migrate_pages 238
 #define TARGET_NR_move_pages 239
-#endif
-
 #define TARGET_NR_rt_tgsigqueueinfo 240
 #define TARGET_NR_perf_event_open 241
 #define TARGET_NR_accept4 242
 #define TARGET_NR_recvmmsg 243
-
-/*
- * Architectures may provide up to 16 syscalls of their own
- * starting with this value.
- */
 #define TARGET_NR_arch_specific_syscall 244
-
 #define TARGET_NR_wait4 260
 #define TARGET_NR_prlimit64 261
 #define TARGET_NR_fanotify_init 262
 #define TARGET_NR_fanotify_mark 263
-#define TARGET_NR_name_to_handle_at         264
-#define TARGET_NR_open_by_handle_at         265
+#define TARGET_NR_name_to_handle_at 264
+#define TARGET_NR_open_by_handle_at 265
 #define TARGET_NR_clock_adjtime 266
 #define TARGET_NR_syncfs 267
 #define TARGET_NR_setns 268
@@ -397,113 +276,47 @@
 #define TARGET_NR_membarrier 283
 #define TARGET_NR_mlock2 284
 #define TARGET_NR_copy_file_range 285
+#define TARGET_NR_preadv2 286
+#define TARGET_NR_pwritev2 287
+#define TARGET_NR_pkey_mprotect 288
+#define TARGET_NR_pkey_alloc 289
+#define TARGET_NR_pkey_free 290
+#define TARGET_NR_statx 291
+#define TARGET_NR_io_pgetevents 292
+#define TARGET_NR_rseq 293
+#define TARGET_NR_kexec_file_load 294
+#define TARGET_NR_clock_gettime64 403
+#define TARGET_NR_clock_settime64 404
+#define TARGET_NR_clock_adjtime64 405
+#define TARGET_NR_clock_getres_time64 406
+#define TARGET_NR_clock_nanosleep_time64 407
+#define TARGET_NR_timer_gettime64 408
+#define TARGET_NR_timer_settime64 409
+#define TARGET_NR_timerfd_gettime64 410
+#define TARGET_NR_timerfd_settime64 411
+#define TARGET_NR_utimensat_time64 412
+#define TARGET_NR_pselect6_time64 413
+#define TARGET_NR_ppoll_time64 414
+#define TARGET_NR_io_pgetevents_time64 416
+#define TARGET_NR_recvmmsg_time64 417
+#define TARGET_NR_mq_timedsend_time64 418
+#define TARGET_NR_mq_timedreceive_time64 419
+#define TARGET_NR_semtimedop_time64 420
+#define TARGET_NR_rt_sigtimedwait_time64 421
+#define TARGET_NR_futex_time64 422
+#define TARGET_NR_sched_rr_get_interval_time64 423
+#define TARGET_NR_pidfd_send_signal 424
+#define TARGET_NR_io_uring_setup 425
+#define TARGET_NR_io_uring_enter 426
+#define TARGET_NR_io_uring_register 427
+#define TARGET_NR_open_tree 428
+#define TARGET_NR_move_mount 429
+#define TARGET_NR_fsopen 430
+#define TARGET_NR_fsconfig 431
+#define TARGET_NR_fsmount 432
+#define TARGET_NR_fspick 433
+#define TARGET_NR_pidfd_open 434
+#define TARGET_NR_syscalls 436
+
+#endif /* LINUX_USER_OPENRISC_SYSCALL_NR_H */
 
-/*
- * All syscalls below here should go away really,
- * these are provided for both review and as a porting
- * help for the C library version.
-*
- * Last chance: are any of these important enough to
- * enable by default?
- */
-#define TARGET_NR_open 1024
-#define TARGET_NR_link 1025
-#define TARGET_NR_unlink 1026
-#define TARGET_NR_mknod 1027
-#define TARGET_NR_chmod 1028
-#define TARGET_NR_chown 1029
-#define TARGET_NR_mkdir 1030
-#define TARGET_NR_rmdir 1031
-#define TARGET_NR_lchown 1032
-#define TARGET_NR_access 1033
-#define TARGET_NR_rename 1034
-#define TARGET_NR_readlink 1035
-#define TARGET_NR_symlink 1036
-#define TARGET_NR_utimes 1037
-#define TARGET_NR_3264_stat 1038
-#define TARGET_NR_3264_lstat 1039
-
-#define TARGET_NR_pipe 1040
-#define TARGET_NR_dup2 1041
-#define TARGET_NR_epoll_create 1042
-#define TARGET_NR_inotify_init 1043
-#define TARGET_NR_eventfd 1044
-#define TARGET_NR_signalfd 1045
-
-#define TARGET_NR_sendfile 1046
-#define TARGET_NR_ftruncate 1047
-#define TARGET_NR_truncate 1048
-#define TARGET_NR_stat 1049
-#define TARGET_NR_lstat 1050
-#define TARGET_NR_fstat 1051
-#define TARGET_NR_fcntl 1052
-#define TARGET_NR_fadvise64 1053
-#define __ARCH_WANT_SYS_FADVISE64
-#define TARGET_NR_newfstatat 1054
-#define __ARCH_WANT_SYS_NEWFSTATAT
-#define TARGET_NR_fstatfs 1055
-#define TARGET_NR_statfs 1056
-#define TARGET_NR_lseek 1057
-#define TARGET_NR_mmap 1058
-
-#define TARGET_NR_alarm 1059
-#define __ARCH_WANT_SYS_ALARM
-#define TARGET_NR_getpgrp 1060
-#define __ARCH_WANT_SYS_GETPGRP
-#define TARGET_NR_pause 1061
-#define __ARCH_WANT_SYS_PAUSE
-#define TARGET_NR_time 1062
-#define __ARCH_WANT_SYS_TIME
-#define __ARCH_WANT_COMPAT_SYS_TIME
-#define TARGET_NR_utime 1063
-#define __ARCH_WANT_SYS_UTIME
-
-#define TARGET_NR_creat 1064
-#define TARGET_NR_getdents 1065
-#define __ARCH_WANT_SYS_GETDENTS
-#define TARGET_NR_futimesat 1066
-#define TARGET_NR_poll 1068
-#define TARGET_NR_epoll_wait 1069
-#define TARGET_NR_ustat 1070
-#define TARGET_NR_vfork 1071
-#define TARGET_NR_oldwait4 1072
-#define TARGET_NR_recv 1073
-#define TARGET_NR_send 1074
-#define TARGET_NR_bdflush 1075
-#define TARGET_NR_umount 1076
-#define __ARCH_WANT_SYS_OLDUMOUNT
-#define TARGET_NR_uselib 1077
-#define TARGET_NR__sysctl 1078
-
-#define TARGET_NR_fork 1079
-
-
-/*
- * 32 bit systems traditionally used different
- * syscalls for off_t and loff_t arguments, while
- * 64 bit systems only need the off_t version.
- * For new 32 bit platforms, there is no need to
- * implement the old 32 bit off_t syscalls, so
- * they take different names.
- * Here we map the numbers so that both versions
- * use the same syscall table layout.
- */
-
-#define TARGET_NR_fcntl64 TARGET_NR_3264_fcntl
-#define TARGET_NR_statfs64 TARGET_NR_3264_statfs
-#define TARGET_NR_fstatfs64 TARGET_NR_3264_fstatfs
-#define TARGET_NR_truncate64 TARGET_NR_3264_truncate
-#define TARGET_NR_ftruncate64 TARGET_NR_3264_ftruncate
-#define TARGET_NR_llseek TARGET_NR_3264_lseek
-#define TARGET_NR_sendfile64 TARGET_NR_3264_sendfile
-#define TARGET_NR_fstatat64 TARGET_NR_3264_fstatat
-#define TARGET_NR_fstat64 TARGET_NR_3264_fstat
-#define TARGET_NR_mmap2 TARGET_NR_3264_mmap
-#define TARGET_NR_fadvise64_64 TARGET_NR_3264_fadvise64
-
-#ifdef TARGET_NR_3264_stat
-#define TARGET_NR_stat64 TARGET_NR_3264_stat
-#define TARGET_NR_lstat64 TARGET_NR_3264_lstat
-#endif
-
-#endif
-- 
2.24.1



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h
  2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
                   ` (3 preceding siblings ...)
  2020-03-10 11:07 ` [PATCH 4/4] linux-user, openrisc: " Laurent Vivier
@ 2020-03-10 11:54 ` no-reply
  2020-03-13 22:05 ` Laurent Vivier
  5 siblings, 0 replies; 12+ messages in thread
From: no-reply @ 2020-03-10 11:54 UTC (permalink / raw)
  To: laurent
  Cc: marex, peter.maydell, proljc, riku.voipio, laurent, qemu-devel,
	alistair.francis

Patchew URL: https://patchew.org/QEMU/20200310110759.3331020-1-laurent@vivier.eu/



Hi,

This series failed the asan build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.

=== TEST SCRIPT BEGIN ===
#!/bin/bash
export ARCH=x86_64
make docker-image-fedora V=1 NETWORK=1
time make docker-test-debug@fedora TARGET_LIST=x86_64-softmmu J=14 NETWORK=1
=== TEST SCRIPT END ===

PASS 1 fdc-test /x86_64/fdc/cmos
PASS 2 fdc-test /x86_64/fdc/no_media_on_start
PASS 3 fdc-test /x86_64/fdc/read_without_media
==6181==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 4 fdc-test /x86_64/fdc/media_change
PASS 5 fdc-test /x86_64/fdc/sense_interrupt
PASS 6 fdc-test /x86_64/fdc/relative_seek
---
PASS 32 test-opts-visitor /visitor/opts/range/beyond
PASS 33 test-opts-visitor /visitor/opts/dict/unvisited
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-coroutine -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-coroutine" 
==6233==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6233==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc1b314000; bottom 0x7f7b6b9a8000; size: 0x0080af96c000 (552701706240)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 1 test-coroutine /basic/no-dangling-access
---
PASS 11 test-aio /aio/event/wait
PASS 12 test-aio /aio/event/flush
PASS 13 test-aio /aio/event/wait/no-flush-cb
==6248==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 14 test-aio /aio/timer/schedule
PASS 15 test-aio /aio/coroutine/queue-chaining
PASS 16 test-aio /aio-gsource/flush
---
PASS 12 fdc-test /x86_64/fdc/read_no_dma_19
PASS 13 fdc-test /x86_64/fdc/fuzz-registers
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/ide-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ide-test" 
==6256==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 28 test-aio /aio-gsource/timer/schedule
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-aio-multithread -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-aio-multithread" 
PASS 1 ide-test /x86_64/ide/identify
==6263==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-aio-multithread /aio/multi/lifecycle
==6265==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 2 ide-test /x86_64/ide/flush
PASS 2 test-aio-multithread /aio/multi/schedule
==6282==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 ide-test /x86_64/ide/bmdma/simple_rw
PASS 3 test-aio-multithread /aio/multi/mutex/contended
==6293==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 4 ide-test /x86_64/ide/bmdma/trim
==6304==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 4 test-aio-multithread /aio/multi/mutex/handoff
PASS 5 test-aio-multithread /aio/multi/mutex/mcs
PASS 6 test-aio-multithread /aio/multi/mutex/pthread
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-throttle -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-throttle" 
==6321==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-throttle /throttle/leak_bucket
PASS 2 test-throttle /throttle/compute_wait
PASS 3 test-throttle /throttle/init
---
PASS 14 test-throttle /throttle/config/max
PASS 15 test-throttle /throttle/config/iops_size
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-thread-pool -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-thread-pool" 
==6325==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-thread-pool /thread-pool/submit
PASS 2 test-thread-pool /thread-pool/submit-aio
PASS 3 test-thread-pool /thread-pool/submit-co
PASS 4 test-thread-pool /thread-pool/submit-many
==6392==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 5 test-thread-pool /thread-pool/cancel
PASS 6 test-thread-pool /thread-pool/cancel-async
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-hbitmap -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-hbitmap" 
---
PASS 14 test-hbitmap /hbitmap/set/twice
PASS 15 test-hbitmap /hbitmap/set/overlap
PASS 16 test-hbitmap /hbitmap/reset/empty
==6402==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 17 test-hbitmap /hbitmap/reset/general
PASS 18 test-hbitmap /hbitmap/reset/all
PASS 19 test-hbitmap /hbitmap/truncate/nop
---
PASS 31 test-hbitmap /hbitmap/meta/one
PASS 32 test-hbitmap /hbitmap/meta/byte
PASS 33 test-hbitmap /hbitmap/meta/word
==6408==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 34 test-hbitmap /hbitmap/meta/sector
PASS 35 test-hbitmap /hbitmap/serialize/align
PASS 36 test-hbitmap /hbitmap/serialize/basic
---
PASS 44 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_4
PASS 45 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_after_truncate
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-bdrv-drain -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bdrv-drain" 
==6415==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-bdrv-drain /bdrv-drain/nested
PASS 2 test-bdrv-drain /bdrv-drain/multiparent
PASS 3 test-bdrv-drain /bdrv-drain/set_aio_context
---
PASS 41 test-bdrv-drain /bdrv-drain/bdrv_drop_intermediate/poll
PASS 42 test-bdrv-drain /bdrv-drain/replace_child/mid-drain
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-bdrv-graph-mod -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bdrv-graph-mod" 
==6454==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-bdrv-graph-mod /bdrv-graph-mod/update-perm-tree
PASS 2 test-bdrv-graph-mod /bdrv-graph-mod/should-update-child
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-blockjob -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-blockjob" 
==6458==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-blockjob /blockjob/ids
PASS 2 test-blockjob /blockjob/cancel/created
PASS 3 test-blockjob /blockjob/cancel/running
---
PASS 7 test-blockjob /blockjob/cancel/pending
PASS 8 test-blockjob /blockjob/cancel/concluded
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-blockjob-txn -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-blockjob-txn" 
==6462==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-blockjob-txn /single/success
PASS 2 test-blockjob-txn /single/failure
PASS 3 test-blockjob-txn /single/cancel
---
PASS 6 test-blockjob-txn /pair/cancel
PASS 7 test-blockjob-txn /pair/fail-cancel-race
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-block-backend -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-block-backend" 
==6466==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-block-backend /block-backend/drain_aio_error
PASS 2 test-block-backend /block-backend/drain_all_aio_error
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-block-iothread -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-block-iothread" 
==6470==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-block-iothread /sync-op/pread
PASS 2 test-block-iothread /sync-op/pwrite
PASS 3 test-block-iothread /sync-op/load_vmstate
---
PASS 15 test-block-iothread /propagate/diamond
PASS 16 test-block-iothread /propagate/mirror
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-image-locking -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-image-locking" 
==6492==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-image-locking /image-locking/basic
PASS 2 test-image-locking /image-locking/set-perm-abort
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-x86-cpuid -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-x86-cpuid" 
PASS 1 test-x86-cpuid /cpuid/topology/basic
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-xbzrle -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-xbzrle" 
==6490==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-xbzrle /xbzrle/uleb
PASS 2 test-xbzrle /xbzrle/encode_decode_zero
PASS 3 test-xbzrle /xbzrle/encode_decode_unchanged
---
PASS 2 rcutorture /rcu/torture/10readers
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-rcu-list -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-list" 
PASS 1 test-rcu-list /rcu/qlist/single-threaded
==6560==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 2 test-rcu-list /rcu/qlist/short-few
PASS 3 test-rcu-list /rcu/qlist/long-many
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-rcu-simpleq -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-simpleq" 
PASS 1 test-rcu-simpleq /rcu/qsimpleq/single-threaded
PASS 2 test-rcu-simpleq /rcu/qsimpleq/short-few
==6620==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 test-rcu-simpleq /rcu/qsimpleq/long-many
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-rcu-tailq -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-tailq" 
PASS 1 test-rcu-tailq /rcu/qtailq/single-threaded
PASS 2 test-rcu-tailq /rcu/qtailq/short-few
PASS 3 test-rcu-tailq /rcu/qtailq/long-many
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-rcu-slist -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-slist" 
==6659==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-rcu-slist /rcu/qslist/single-threaded
PASS 2 test-rcu-slist /rcu/qslist/short-few
PASS 3 test-rcu-slist /rcu/qslist/long-many
---
PASS 7 test-qdist /qdist/binning/expand
PASS 8 test-qdist /qdist/binning/shrink
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-qht -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qht" 
==6705==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 5 ide-test /x86_64/ide/bmdma/various_prdts
==6711==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6711==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcca4e0000; bottom 0x7f0a88dfe000; size: 0x00f2416e2000 (1040479821824)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 6 ide-test /x86_64/ide/bmdma/no_busmaster
PASS 7 ide-test /x86_64/ide/flush/nodev
==6722==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 8 ide-test /x86_64/ide/flush/empty_drive
==6727==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 9 ide-test /x86_64/ide/flush/retry_pci
==6733==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 10 ide-test /x86_64/ide/flush/retry_isa
==6739==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 11 ide-test /x86_64/ide/cdrom/pio
==6745==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 12 ide-test /x86_64/ide/cdrom/pio_large
PASS 1 test-qht /qht/mode/default
==6751==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 13 ide-test /x86_64/ide/cdrom/dma
PASS 2 test-qht /qht/mode/resize
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-qht-par -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qht-par" 
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/ahci-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ahci-test" 
==6774==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-qht-par /qht/parallel/2threads-0%updates-1s
PASS 1 ahci-test /x86_64/ahci/sanity
==6786==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 2 ahci-test /x86_64/ahci/pci_spec
PASS 2 test-qht-par /qht/parallel/2threads-20%updates-1s
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-bitops -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bitops" 
---
PASS 5 test-bitops /bitops/half_unshuffle32
PASS 6 test-bitops /bitops/half_unshuffle64
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-bitcnt -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bitcnt" 
==6792==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-bitcnt /bitcnt/ctpop8
PASS 2 test-bitcnt /bitcnt/ctpop16
PASS 3 test-bitcnt /bitcnt/ctpop32
---
PASS 1 check-qom-interface /qom/interface/direct_impl
PASS 2 check-qom-interface /qom/interface/intermediate_impl
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/check-qom-proplist -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="check-qom-proplist" 
==6811==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 check-qom-proplist /qom/proplist/createlist
PASS 2 check-qom-proplist /qom/proplist/createv
PASS 3 check-qom-proplist /qom/proplist/createcmdline
---
PASS 9 test-keyval /keyval/visit/alternate
PASS 10 test-keyval /keyval/visit/any
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-write-threshold -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-write-threshold" 
==6836==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-write-threshold /write-threshold/not-set-on-init
PASS 2 test-write-threshold /write-threshold/set-get
PASS 3 test-write-threshold /write-threshold/multi-set-get
---
PASS 27 test-crypto-cipher /crypto/cipher/null-iv
PASS 28 test-crypto-cipher /crypto/cipher/short-plaintext
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-crypto-secret -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-secret" 
==6858==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-crypto-secret /crypto/secret/direct
PASS 2 test-crypto-secret /crypto/secret/indirect/good
PASS 3 test-crypto-secret /crypto/secret/indirect/badfile
---
PASS 6 ahci-test /x86_64/ahci/identify
PASS 1 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectserver
PASS 2 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectclient
==6876==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 7 ahci-test /x86_64/ahci/max
==6882==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca1
PASS 8 ahci-test /x86_64/ahci/reset
==6888==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6888==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe444f7000; bottom 0x7f6291ffe000; size: 0x009bb24f9000 (668711489536)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 9 ahci-test /x86_64/ahci/io/pio/lba28/simple/zero
---
PASS 6 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca1
PASS 7 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca2
PASS 8 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca3
==6894==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6894==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc224e7000; bottom 0x7ff3063fe000; size: 0x00091c0e9000 (39125422080)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 10 ahci-test /x86_64/ahci/io/pio/lba28/simple/low
PASS 9 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver1
==6900==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6900==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffb7f8c000; bottom 0x7fdcb33fe000; size: 0x002304b8e000 (150403080192)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 11 ahci-test /x86_64/ahci/io/pio/lba28/simple/high
PASS 10 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver2
PASS 11 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver3
==6906==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6906==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe500a0000; bottom 0x7f911adfe000; size: 0x006d352a2000 (469043388416)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 12 ahci-test /x86_64/ahci/io/pio/lba28/double/zero
PASS 12 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver4
PASS 13 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver5
==6912==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 14 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver6
==6912==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd4e572000; bottom 0x7f214fdfe000; size: 0x00dbfe774000 (944867065856)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 15 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver7
---
PASS 38 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingserver
PASS 39 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingclient
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-crypto-tlssession -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-tlssession" 
==6918==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6918==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe66075000; bottom 0x7ff0dabfe000; size: 0x000d8b477000 (58171289600)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 14 ahci-test /x86_64/ahci/io/pio/lba28/double/high
PASS 1 test-crypto-tlssession /qcrypto/tlssession/psk
==6928==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 2 test-crypto-tlssession /qcrypto/tlssession/basicca
==6928==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe60755000; bottom 0x7fc5ec9fe000; size: 0x003873d57000 (242461536256)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 15 ahci-test /x86_64/ahci/io/pio/lba28/long/zero
==6934==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 test-crypto-tlssession /qcrypto/tlssession/differentca
==6934==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffe6771000; bottom 0x7f18b4924000; size: 0x00e731e4d000 (992974524416)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 4 test-crypto-tlssession /qcrypto/tlssession/altname1
PASS 16 ahci-test /x86_64/ahci/io/pio/lba28/long/low
==6940==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6940==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff0672b000; bottom 0x7f7501b7c000; size: 0x008a04baf000 (592784846848)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 17 ahci-test /x86_64/ahci/io/pio/lba28/long/high
==6946==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 5 test-crypto-tlssession /qcrypto/tlssession/altname2
PASS 18 ahci-test /x86_64/ahci/io/pio/lba28/short/zero
PASS 6 test-crypto-tlssession /qcrypto/tlssession/altname3
==6952==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 7 test-crypto-tlssession /qcrypto/tlssession/altname4
PASS 8 test-crypto-tlssession /qcrypto/tlssession/altname5
PASS 19 ahci-test /x86_64/ahci/io/pio/lba28/short/low
PASS 9 test-crypto-tlssession /qcrypto/tlssession/altname6
PASS 10 test-crypto-tlssession /qcrypto/tlssession/wildcard1
==6958==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 11 test-crypto-tlssession /qcrypto/tlssession/wildcard2
PASS 20 ahci-test /x86_64/ahci/io/pio/lba28/short/high
PASS 12 test-crypto-tlssession /qcrypto/tlssession/wildcard3
PASS 13 test-crypto-tlssession /qcrypto/tlssession/wildcard4
==6964==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6964==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe0ed02000; bottom 0x7f19ec9fe000; size: 0x00e422304000 (979826130944)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 21 ahci-test /x86_64/ahci/io/pio/lba48/simple/zero
==6970==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6970==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff011aa000; bottom 0x7ff26c5fe000; size: 0x000c94bac000 (54034874368)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 22 ahci-test /x86_64/ahci/io/pio/lba48/simple/low
==6976==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6976==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc20c3c000; bottom 0x7fcd6affe000; size: 0x002eb5c3e000 (200618008576)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 23 ahci-test /x86_64/ahci/io/pio/lba48/simple/high
==6982==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==6982==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff7618b000; bottom 0x7ff4adffe000; size: 0x000ac818d000 (46306742272)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 24 ahci-test /x86_64/ahci/io/pio/lba48/double/zero
==6988==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 14 test-crypto-tlssession /qcrypto/tlssession/wildcard5
==6988==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffdc9b6f000; bottom 0x7f64be1fe000; size: 0x00990b971000 (657324445696)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 25 ahci-test /x86_64/ahci/io/pio/lba48/double/low
==6994==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 15 test-crypto-tlssession /qcrypto/tlssession/wildcard6
==6994==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe25f08000; bottom 0x7f5f427fe000; size: 0x009ee370a000 (682420641792)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 26 ahci-test /x86_64/ahci/io/pio/lba48/double/high
PASS 16 test-crypto-tlssession /qcrypto/tlssession/cachain
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qga" 
==7000==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7000==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe011a5000; bottom 0x7f537c724000; size: 0x00aa84a81000 (732370046976)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 27 ahci-test /x86_64/ahci/io/pio/lba48/long/zero
---
PASS 6 test-qga /qga/get-vcpus
PASS 7 test-qga /qga/get-fsinfo
PASS 8 test-qga /qga/get-memory-block-info
==7014==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 9 test-qga /qga/get-memory-blocks
PASS 10 test-qga /qga/file-ops
PASS 11 test-qga /qga/file-write-read
---
PASS 15 test-qga /qga/invalid-cmd
PASS 16 test-qga /qga/invalid-args
PASS 17 test-qga /qga/fsfreeze-status
==7014==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcce84e000; bottom 0x7f5720524000; size: 0x00a5ae32a000 (711592157184)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 28 ahci-test /x86_64/ahci/io/pio/lba48/long/low
==7023==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 18 test-qga /qga/blacklist
PASS 19 test-qga /qga/config
PASS 20 test-qga /qga/guest-exec
PASS 21 test-qga /qga/guest-exec-invalid
==7023==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc081b1000; bottom 0x7fade27fe000; size: 0x004e259b3000 (335638376448)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 29 ahci-test /x86_64/ahci/io/pio/lba48/long/high
==7041==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 22 test-qga /qga/guest-get-osinfo
PASS 23 test-qga /qga/guest-get-host-name
PASS 24 test-qga /qga/guest-get-timezone
---
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-util-filemonitor -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-util-filemonitor" 
PASS 1 test-util-filemonitor /util/filemonitor
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-util-sockets -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-util-sockets" 
==7052==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-util-sockets /util/socket/is-socket/bad
PASS 2 test-util-sockets /util/socket/is-socket/good
PASS 3 test-util-sockets /socket/fd-pass/name/good
---
PASS 4 test-authz-listfile /auth/list/explicit/deny
PASS 5 test-authz-listfile /auth/list/explicit/allow
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-io-task -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-task" 
==7071==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-io-task /crypto/task/complete
PASS 2 test-io-task /crypto/task/datafree
PASS 3 test-io-task /crypto/task/failure
---
PASS 4 test-io-channel-file /io/channel/pipe/sync
PASS 5 test-io-channel-file /io/channel/pipe/async
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-io-channel-tls -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-tls" 
==7131==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 33 ahci-test /x86_64/ahci/io/dma/lba28/fragmented
==7149==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-io-channel-tls /qio/channel/tls/basic
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-io-channel-command -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-command" 
PASS 1 test-io-channel-command /io/channel/command/fifo/sync
---
PASS 34 ahci-test /x86_64/ahci/io/dma/lba28/retry
PASS 1 test-io-channel-buffer /io/channel/buf
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-base64 -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-base64" 
==7166==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-base64 /util/base64/good
PASS 2 test-base64 /util/base64/embedded-nul
PASS 3 test-base64 /util/base64/not-nul-terminated
---
PASS 17 test-crypto-xts /crypto/xts/t-21-key-32-ptx-31/basic
PASS 18 test-crypto-xts /crypto/xts/t-21-key-32-ptx-31/unaligned
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-crypto-block -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-block" 
==7187==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-crypto-block /crypto/block/qcow
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-logging -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-logging" 
PASS 1 test-logging /logging/parse_range
---
PASS 4 test-logging /logging/logfile_lock_path
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-replication -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-replication" 
PASS 36 ahci-test /x86_64/ahci/io/dma/lba28/simple/low
==7207==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7209==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 1 test-replication /replication/primary/read
PASS 2 test-replication /replication/primary/write
PASS 37 ahci-test /x86_64/ahci/io/dma/lba28/simple/high
==7217==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 test-replication /replication/primary/start
PASS 4 test-replication /replication/primary/stop
PASS 5 test-replication /replication/primary/do_checkpoint
PASS 38 ahci-test /x86_64/ahci/io/dma/lba28/double/zero
PASS 6 test-replication /replication/primary/get_error_all
==7223==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 7 test-replication /replication/secondary/read
PASS 39 ahci-test /x86_64/ahci/io/dma/lba28/double/low
==7229==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 8 test-replication /replication/secondary/write
PASS 40 ahci-test /x86_64/ahci/io/dma/lba28/double/high
==7235==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7235==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe32c39000; bottom 0x7fd80ebfd000; size: 0x00262403c000 (163812982784)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 41 ahci-test /x86_64/ahci/io/dma/lba28/long/zero
==7242==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7242==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd1eb5e000; bottom 0x7f6fb0523000; size: 0x008d6e63b000 (607442415616)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 42 ahci-test /x86_64/ahci/io/dma/lba28/long/low
==7207==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffef9fbf000; bottom 0x7f9d1519b000; size: 0x0061e4e24000 (420451860480)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
==7268==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 9 test-replication /replication/secondary/start
==7268==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcaa376000; bottom 0x7f984337b000; size: 0x006466ffb000 (431224762368)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 43 ahci-test /x86_64/ahci/io/dma/lba28/long/high
==7275==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 44 ahci-test /x86_64/ahci/io/dma/lba28/short/zero
==7281==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 45 ahci-test /x86_64/ahci/io/dma/lba28/short/low
PASS 10 test-replication /replication/secondary/stop
==7287==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 46 ahci-test /x86_64/ahci/io/dma/lba28/short/high
==7293==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 47 ahci-test /x86_64/ahci/io/dma/lba48/simple/zero
==7299==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 48 ahci-test /x86_64/ahci/io/dma/lba48/simple/low
PASS 11 test-replication /replication/secondary/continuous_replication
==7305==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 49 ahci-test /x86_64/ahci/io/dma/lba48/simple/high
==7311==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 50 ahci-test /x86_64/ahci/io/dma/lba48/double/zero
==7317==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 51 ahci-test /x86_64/ahci/io/dma/lba48/double/low
PASS 12 test-replication /replication/secondary/do_checkpoint
==7323==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 52 ahci-test /x86_64/ahci/io/dma/lba48/double/high
==7329==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 13 test-replication /replication/secondary/get_error_all
==7329==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe82f5d000; bottom 0x7f6eb23fd000; size: 0x008fd0b60000 (617681911808)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-bufferiszero -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bufferiszero" 
PASS 53 ahci-test /x86_64/ahci/io/dma/lba48/long/zero
==7339==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7339==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffefd049000; bottom 0x7f2d4577b000; size: 0x00d1b78ce000 (900727627776)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 54 ahci-test /x86_64/ahci/io/dma/lba48/long/low
==7346==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7346==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd799e3000; bottom 0x7fcbdf5fd000; size: 0x00319a3e6000 (213041176576)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 55 ahci-test /x86_64/ahci/io/dma/lba48/long/high
==7353==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 56 ahci-test /x86_64/ahci/io/dma/lba48/short/zero
==7359==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 57 ahci-test /x86_64/ahci/io/dma/lba48/short/low
==7365==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 58 ahci-test /x86_64/ahci/io/dma/lba48/short/high
==7371==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 59 ahci-test /x86_64/ahci/io/ncq/simple
==7377==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 60 ahci-test /x86_64/ahci/io/ncq/retry
==7383==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 61 ahci-test /x86_64/ahci/flush/simple
==7389==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 62 ahci-test /x86_64/ahci/flush/retry
==7395==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7401==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 63 ahci-test /x86_64/ahci/flush/migrate
==7409==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7415==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 64 ahci-test /x86_64/ahci/migrate/sanity
==7423==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7429==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 65 ahci-test /x86_64/ahci/migrate/dma/simple
==7437==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7443==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 66 ahci-test /x86_64/ahci/migrate/dma/halted
==7451==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7457==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 67 ahci-test /x86_64/ahci/migrate/ncq/simple
==7465==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7471==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 68 ahci-test /x86_64/ahci/migrate/ncq/halted
==7479==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 69 ahci-test /x86_64/ahci/cdrom/eject
==7484==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 70 ahci-test /x86_64/ahci/cdrom/dma/single
==7490==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 71 ahci-test /x86_64/ahci/cdrom/dma/multi
PASS 1 test-bufferiszero /cutils/bufferiszero
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-uuid -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-uuid" 
---
PASS 1 test-qapi-util /qapi/util/qapi_enum_parse
PASS 2 test-qapi-util /qapi/util/parse_qapi_name
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  tests/test-qgraph -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qgraph" 
==7496==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 72 ahci-test /x86_64/ahci/cdrom/pio/single
PASS 1 test-qgraph /qgraph/init_nop
PASS 2 test-qgraph /qgraph/test_machine
---
PASS 21 test-qgraph /qgraph/test_two_test_same_interface
PASS 22 test-qgraph /qgraph/test_test_in_path
PASS 23 test-qgraph /qgraph/test_double_edge
==7515==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7515==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff6e977000; bottom 0x7f84ecbfe000; size: 0x007a81d79000 (526164398080)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
PASS 73 ahci-test /x86_64/ahci/cdrom/pio/multi
==7521==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 74 ahci-test /x86_64/ahci/cdrom/pio/bcl
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/hd-geo-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="hd-geo-test" 
PASS 1 hd-geo-test /x86_64/hd-geo/ide/none
==7535==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 2 hd-geo-test /x86_64/hd-geo/ide/drive/cd_0
==7541==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/blank
==7547==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 4 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/lba
==7553==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 5 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/chs
==7559==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 6 hd-geo-test /x86_64/hd-geo/ide/device/mbr/blank
==7565==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 7 hd-geo-test /x86_64/hd-geo/ide/device/mbr/lba
==7571==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 8 hd-geo-test /x86_64/hd-geo/ide/device/mbr/chs
==7577==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 9 hd-geo-test /x86_64/hd-geo/ide/device/user/chs
==7582==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 10 hd-geo-test /x86_64/hd-geo/ide/device/user/chst
==7588==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7592==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7596==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7600==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7604==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7608==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7612==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7616==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7619==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 11 hd-geo-test /x86_64/hd-geo/override/ide
==7626==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7630==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7634==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7638==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7642==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7646==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7650==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7654==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7657==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 12 hd-geo-test /x86_64/hd-geo/override/scsi
==7664==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7668==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7672==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7676==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7680==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7684==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7688==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7692==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7695==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 13 hd-geo-test /x86_64/hd-geo/override/scsi_2_controllers
==7702==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7706==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7710==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7714==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7717==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 14 hd-geo-test /x86_64/hd-geo/override/virtio_blk
==7724==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7728==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7731==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 15 hd-geo-test /x86_64/hd-geo/override/zero_chs
==7738==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7742==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7746==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7750==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7753==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 16 hd-geo-test /x86_64/hd-geo/override/scsi_hot_unplug
==7760==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7764==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7768==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7772==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
==7775==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 17 hd-geo-test /x86_64/hd-geo/override/virtio_hot_unplug
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/boot-order-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="boot-order-test" 
PASS 1 boot-order-test /x86_64/boot-order/pc
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7844==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP'
Using expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7850==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP'
Using expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7856==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.bridge'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7862==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.ipmikcs'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7868==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.cphp'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7875==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.memhp'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7881==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.numamem'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7887==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.dimmpxm'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7896==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/pc/FACP.acpihmat'
Looking for expected file 'tests/data/acpi/pc/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7903==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.bridge'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7909==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.mmio64'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7915==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.ipmibt'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7921==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.cphp'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7928==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.memhp'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7934==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.numamem'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7940==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.dimmpxm'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
Could not access KVM kernel module: No such file or directory
qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory
qemu-system-x86_64: falling back to tcg
==7949==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!

Looking for expected file 'tests/data/acpi/q35/FACP.acpihmat'
Looking for expected file 'tests/data/acpi/q35/FACP'
---
PASS 1 i440fx-test /x86_64/i440fx/defaults
PASS 2 i440fx-test /x86_64/i440fx/pam
PASS 3 i440fx-test /x86_64/i440fx/firmware/bios
==8041==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 4 i440fx-test /x86_64/i440fx/firmware/pflash
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/fw_cfg-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="fw_cfg-test" 
PASS 1 fw_cfg-test /x86_64/fw_cfg/signature
---
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/drive_del-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="drive_del-test" 
PASS 1 drive_del-test /x86_64/drive_del/without-dev
PASS 2 drive_del-test /x86_64/drive_del/after_failed_device_add
==8134==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases!
PASS 3 drive_del-test /x86_64/blockdev/drive_del_device_del
MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}  QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/wdt_ib700-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="wdt_ib700-test" 
PASS 1 wdt_ib700-test /x86_64/wdt_ib700/pause
---
dbus-daemon[8304]: Could not get password database information for UID of current process: User "???" unknown or no memory to allocate password entry

**
ERROR:/tmp/qemu-test/src/tests/qtest/dbus-vmstate-test.c:114:get_connection: assertion failed (err == NULL): The connection is closed (g-io-error-quark, 18)
cleaning up pid 8304
ERROR - Bail out! ERROR:/tmp/qemu-test/src/tests/qtest/dbus-vmstate-test.c:114:get_connection: assertion failed (err == NULL): The connection is closed (g-io-error-quark, 18)
make: *** [/tmp/qemu-test/src/tests/Makefile.include:632: check-qtest-x86_64] Error 1
make: *** Waiting for unfinished jobs....
Traceback (most recent call last):
  File "./tests/docker/docker.py", line 664, in <module>
---
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=ae9a196681e54168b09a5db75ecdd47a', '-u', '1003', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=x86_64-softmmu', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew2/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-s971ogk7/src/docker-src.2020-03-10-07.26.53.6690:/var/tmp/qemu:z,ro', 'qemu:fedora', '/var/tmp/qemu/run', 'test-debug']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=ae9a196681e54168b09a5db75ecdd47a
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-s971ogk7/src'
make: *** [docker-run-test-debug@fedora] Error 2

real    28m3.996s
user    0m8.697s


The full log is available at
http://patchew.org/logs/20200310110759.3331020-1-laurent@vivier.eu/testing.asan/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 1/4] scripts: add a script to generate syscall_nr.h
  2020-03-10 11:07 ` [PATCH 1/4] scripts: add a script to generate syscall_nr.h Laurent Vivier
@ 2020-03-10 17:25   ` Alistair Francis
  2020-03-11 13:09   ` Taylor Simpson
  1 sibling, 0 replies; 12+ messages in thread
From: Alistair Francis @ 2020-03-10 17:25 UTC (permalink / raw)
  To: Laurent Vivier
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio,
	qemu-devel@nongnu.org Developers, Alistair Francis

On Tue, Mar 10, 2020 at 4:08 AM Laurent Vivier <laurent@vivier.eu> wrote:
>
> This script is needed for targets based on asm-generic syscall numbers generation
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>

Alistair

> ---
>  scripts/gensyscalls.sh | 94 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 94 insertions(+)
>  create mode 100755 scripts/gensyscalls.sh
>
> diff --git a/scripts/gensyscalls.sh b/scripts/gensyscalls.sh
> new file mode 100755
> index 000000000000..3b549a665d0f
> --- /dev/null
> +++ b/scripts/gensyscalls.sh
> @@ -0,0 +1,94 @@
> +#!/bin/sh
> +
> +linux="$1"
> +output="$2"
> +
> +TMP=$(mktemp -d)
> +
> +if [ "$linux" = "" ] ; then
> +    echo "Needs path to linux source tree" 1>&2
> +    exit 1
> +fi
> +
> +if [ "$output" = "" ] ; then
> +    output="$PWD"
> +fi
> +
> +upper()
> +{
> +    echo "$1" | tr "[:lower:]" "[:upper:]" | tr "[:punct:]" "_"
> +}
> +
> +qemu_arch()
> +{
> +    case "$1" in
> +    arm64)
> +        echo "aarch64"
> +        ;;
> +    *)
> +        upper "$1"
> +        ;;
> +    esac
> +}
> +
> +read_includes()
> +{
> +    arch=$1
> +    bits=$2
> +
> +     cpp -P -nostdinc -fdirectives-only \
> +        -D_UAPI_ASM_$(upper ${arch})_BITSPERLONG_H \
> +        -D__BITS_PER_LONG=${bits} \
> +        -I${linux}/arch/${arch}/include/uapi/ \
> +        -I${linux}/include/uapi \
> +        -I${TMP} \
> +        "${linux}/arch/${arch}/include/uapi/asm/unistd.h"
> +}
> +
> +filter_defines()
> +{
> +    grep -e "#define __NR_" -e "#define __NR3264"
> +}
> +
> +rename_defines()
> +{
> +    sed "s/ __NR_/ TARGET_NR_/g;s/(__NR_/(TARGET_NR_/g"
> +}
> +
> +evaluate_values()
> +{
> +    sed "s/#define TARGET_NR_/QEMU TARGET_NR_/" | \
> +    cpp -P -nostdinc | \
> +    sed "s/^QEMU /#define /"
> +}
> +
> +generate_syscall_nr()
> +{
> +    arch=$1
> +    bits=$2
> +    file="$3"
> +    guard="$(upper LINUX_USER_$(qemu_arch $arch)_$(basename "$file"))"
> +
> +    (echo "/*"
> +    echo " * This file contains the system call numbers."
> +    echo " */"
> +    echo "#ifndef ${guard}"
> +    echo "#define ${guard}"
> +    echo
> +    read_includes $arch $bits | filter_defines | rename_defines | \
> +                                evaluate_values | sort -n -k 3
> +    echo
> +    echo "#endif /* ${guard} */"
> +    echo) > "$file"
> +}
> +
> +mkdir "$TMP/asm"
> +> "$TMP/asm/bitsperlong.h"
> +
> +generate_syscall_nr arm64 64 "$output/linux-user/aarch64/syscall_nr.h"
> +generate_syscall_nr nios2 32 "$output/linux-user/nios2/syscall_nr.h"
> +generate_syscall_nr openrisc 32 "$output/linux-user/openrisc/syscall_nr.h"
> +
> +generate_syscall_nr riscv 32 "$output/linux-user/riscv/syscall32_nr.h"
> +generate_syscall_nr riscv 64 "$output/linux-user/riscv/syscall64_nr.h"
> +rm -fr "$TMP"
> --
> 2.24.1
>
>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/4] linux-user, aarch64: sync syscall numbers with kernel v5.5
  2020-03-10 11:07 ` [PATCH 2/4] linux-user, aarch64: sync syscall numbers with kernel v5.5 Laurent Vivier
@ 2020-03-10 17:26   ` Alistair Francis
  0 siblings, 0 replies; 12+ messages in thread
From: Alistair Francis @ 2020-03-10 17:26 UTC (permalink / raw)
  To: Laurent Vivier
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio,
	qemu-devel@nongnu.org Developers, Alistair Francis

On Tue, Mar 10, 2020 at 4:10 AM Laurent Vivier <laurent@vivier.eu> wrote:
>
> Use helper script scripts/gensyscalls.sh to generate the file.
>
> This change TARGET_NR_fstatat64 by TARGET_NR_newfstatat that is correct
> because definitions from linux are:
>
> arch/arm64/include/uapi/asm/unistd.h
>
>   #define __ARCH_WANT_NEW_STAT
>
> include/uapi/asm-generic/unistd.h
>
>   #if defined(__ARCH_WANT_NEW_STAT) || defined(__ARCH_WANT_STAT64)
>   #define __NR3264_fstatat 79
>   __SC_3264(__NR3264_fstatat, sys_fstatat64, sys_newfstatat)
>   #define __NR3264_fstat 80
>   __SC_3264(__NR3264_fstat, sys_fstat64, sys_newfstat)
>   #endif
>   ...
>   #if __BITS_PER_LONG == 64 && !defined(__SYSCALL_COMPAT)
>   ...
>   #if defined(__ARCH_WANT_NEW_STAT) || defined(__ARCH_WANT_STAT64)
>   #define __NR_newfstatat __NR3264_fstatat
>   #define __NR_fstat __NR3264_fstat
>   #endif
>   ...
>
> Add syscalls 286 (preadv2) to 435 (clone3).
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>

Alistair

> ---
>  linux-user/aarch64/syscall_nr.h | 32 +++++++++++++++++++++++++++-----
>  1 file changed, 27 insertions(+), 5 deletions(-)
>
> diff --git a/linux-user/aarch64/syscall_nr.h b/linux-user/aarch64/syscall_nr.h
> index f00ffd7fb82f..eb5287bf6c98 100644
> --- a/linux-user/aarch64/syscall_nr.h
> +++ b/linux-user/aarch64/syscall_nr.h
> @@ -1,7 +1,6 @@
>  /*
>   * This file contains the system call numbers.
>   */
> -
>  #ifndef LINUX_USER_AARCH64_SYSCALL_NR_H
>  #define LINUX_USER_AARCH64_SYSCALL_NR_H
>
> @@ -84,7 +83,7 @@
>  #define TARGET_NR_splice 76
>  #define TARGET_NR_tee 77
>  #define TARGET_NR_readlinkat 78
> -#define TARGET_NR_fstatat64 79
> +#define TARGET_NR_newfstatat 79
>  #define TARGET_NR_fstat 80
>  #define TARGET_NR_sync 81
>  #define TARGET_NR_fsync 82
> @@ -254,8 +253,8 @@
>  #define TARGET_NR_prlimit64 261
>  #define TARGET_NR_fanotify_init 262
>  #define TARGET_NR_fanotify_mark 263
> -#define TARGET_NR_name_to_handle_at         264
> -#define TARGET_NR_open_by_handle_at         265
> +#define TARGET_NR_name_to_handle_at 264
> +#define TARGET_NR_open_by_handle_at 265
>  #define TARGET_NR_clock_adjtime 266
>  #define TARGET_NR_syncfs 267
>  #define TARGET_NR_setns 268
> @@ -276,5 +275,28 @@
>  #define TARGET_NR_membarrier 283
>  #define TARGET_NR_mlock2 284
>  #define TARGET_NR_copy_file_range 285
> +#define TARGET_NR_preadv2 286
> +#define TARGET_NR_pwritev2 287
> +#define TARGET_NR_pkey_mprotect 288
> +#define TARGET_NR_pkey_alloc 289
> +#define TARGET_NR_pkey_free 290
> +#define TARGET_NR_statx 291
> +#define TARGET_NR_io_pgetevents 292
> +#define TARGET_NR_rseq 293
> +#define TARGET_NR_kexec_file_load 294
> +#define TARGET_NR_pidfd_send_signal 424
> +#define TARGET_NR_io_uring_setup 425
> +#define TARGET_NR_io_uring_enter 426
> +#define TARGET_NR_io_uring_register 427
> +#define TARGET_NR_open_tree 428
> +#define TARGET_NR_move_mount 429
> +#define TARGET_NR_fsopen 430
> +#define TARGET_NR_fsconfig 431
> +#define TARGET_NR_fsmount 432
> +#define TARGET_NR_fspick 433
> +#define TARGET_NR_pidfd_open 434
> +#define TARGET_NR_clone3 435
> +#define TARGET_NR_syscalls 436
> +
> +#endif /* LINUX_USER_AARCH64_SYSCALL_NR_H */
>
> -#endif
> --
> 2.24.1
>
>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 3/4] linux-user, nios2: sync syscall numbers with kernel v5.5
  2020-03-10 11:07 ` [PATCH 3/4] linux-user,nios2: " Laurent Vivier
@ 2020-03-10 17:27   ` Alistair Francis
  0 siblings, 0 replies; 12+ messages in thread
From: Alistair Francis @ 2020-03-10 17:27 UTC (permalink / raw)
  To: Laurent Vivier
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio,
	qemu-devel@nongnu.org Developers, Alistair Francis

On Tue, Mar 10, 2020 at 4:11 AM Laurent Vivier <laurent@vivier.eu> wrote:
>
> Use helper script scripts/gensyscalls.sh to generate the file.
>
> This adds TARGET_NR_llseek that was missing and remove syscalls 1024
> to 1079.
>
> Add new syscalls from 288 (pkey_mprotect) to 434 (pidfd_open)
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>

Alistair

> ---
>  linux-user/nios2/syscall_nr.h | 648 +++++++++++++++++-----------------
>  1 file changed, 318 insertions(+), 330 deletions(-)
>
> diff --git a/linux-user/nios2/syscall_nr.h b/linux-user/nios2/syscall_nr.h
> index 8fb87864ca0b..47213bcd5456 100644
> --- a/linux-user/nios2/syscall_nr.h
> +++ b/linux-user/nios2/syscall_nr.h
> @@ -1,334 +1,322 @@
> +/*
> + * This file contains the system call numbers.
> + */
>  #ifndef LINUX_USER_NIOS2_SYSCALL_NR_H
>  #define LINUX_USER_NIOS2_SYSCALL_NR_H
>
> -#define TARGET_NR_io_setup                  0
> -#define TARGET_NR_io_destroy                1
> -#define TARGET_NR_io_submit                 2
> -#define TARGET_NR_io_cancel                 3
> -#define TARGET_NR_io_getevents              4
> -#define TARGET_NR_setxattr                  5
> -#define TARGET_NR_lsetxattr                 6
> -#define TARGET_NR_fsetxattr                 7
> -#define TARGET_NR_getxattr                  8
> -#define TARGET_NR_lgetxattr                 9
> -#define TARGET_NR_fgetxattr                 10
> -#define TARGET_NR_listxattr                 11
> -#define TARGET_NR_llistxattr                12
> -#define TARGET_NR_flistxattr                13
> -#define TARGET_NR_removexattr               14
> -#define TARGET_NR_lremovexattr              15
> -#define TARGET_NR_fremovexattr              16
> -#define TARGET_NR_getcwd                    17
> -#define TARGET_NR_lookup_dcookie            18
> -#define TARGET_NR_eventfd2                  19
> -#define TARGET_NR_epoll_create1             20
> -#define TARGET_NR_epoll_ctl                 21
> -#define TARGET_NR_epoll_pwait               22
> -#define TARGET_NR_dup                       23
> -#define TARGET_NR_dup3                      24
> -#define TARGET_NR_fcntl64                   25
> -#define TARGET_NR_inotify_init1             26
> -#define TARGET_NR_inotify_add_watch         27
> -#define TARGET_NR_inotify_rm_watch          28
> -#define TARGET_NR_ioctl                     29
> -#define TARGET_NR_ioprio_set                30
> -#define TARGET_NR_ioprio_get                31
> -#define TARGET_NR_flock                     32
> -#define TARGET_NR_mknodat                   33
> -#define TARGET_NR_mkdirat                   34
> -#define TARGET_NR_unlinkat                  35
> -#define TARGET_NR_symlinkat                 36
> -#define TARGET_NR_linkat                    37
> -#define TARGET_NR_renameat                  38
> -#define TARGET_NR_umount2                   39
> -#define TARGET_NR_mount                     40
> -#define TARGET_NR_pivot_root                41
> -#define TARGET_NR_nfsservctl                42
> -#define TARGET_NR_statfs64                  43
> -#define TARGET_NR_fstatfs64                 44
> -#define TARGET_NR_truncate64                45
> -#define TARGET_NR_ftruncate64               46
> -#define TARGET_NR_fallocate                 47
> -#define TARGET_NR_faccessat                 48
> -#define TARGET_NR_chdir                     49
> -#define TARGET_NR_fchdir                    50
> -#define TARGET_NR_chroot                    51
> -#define TARGET_NR_fchmod                    52
> -#define TARGET_NR_fchmodat                  53
> -#define TARGET_NR_fchownat                  54
> -#define TARGET_NR_fchown                    55
> -#define TARGET_NR_openat                    56
> -#define TARGET_NR_close                     57
> -#define TARGET_NR_vhangup                   58
> -#define TARGET_NR_pipe2                     59
> -#define TARGET_NR_quotactl                  60
> -#define TARGET_NR_getdents64                61
> -#define TARGET_NR_read                      63
> -#define TARGET_NR_write                     64
> -#define TARGET_NR_readv                     65
> -#define TARGET_NR_writev                    66
> -#define TARGET_NR_pread64                   67
> -#define TARGET_NR_pwrite64                  68
> -#define TARGET_NR_preadv                    69
> -#define TARGET_NR_pwritev                   70
> -#define TARGET_NR_sendfile64                71
> -#define TARGET_NR_pselect6                  72
> -#define TARGET_NR_ppoll                     73
> -#define TARGET_NR_signalfd4                 74
> -#define TARGET_NR_vmsplice                  75
> -#define TARGET_NR_splice                    76
> -#define TARGET_NR_tee                       77
> -#define TARGET_NR_readlinkat                78
> -#define TARGET_NR_fstatat64                 79
> -#define TARGET_NR_fstat64                   80
> -#define TARGET_NR_sync                      81
> -#define TARGET_NR_fsync                     82
> -#define TARGET_NR_fdatasync                 83
> -#define TARGET_NR_sync_file_range           84
> -#define TARGET_NR_timerfd_create            85
> -#define TARGET_NR_timerfd_settime           86
> -#define TARGET_NR_timerfd_gettime           87
> -#define TARGET_NR_utimensat                 88
> -#define TARGET_NR_acct                      89
> -#define TARGET_NR_capget                    90
> -#define TARGET_NR_capset                    91
> -#define TARGET_NR_personality               92
> -#define TARGET_NR_exit                      93
> -#define TARGET_NR_exit_group                94
> -#define TARGET_NR_waitid                    95
> -#define TARGET_NR_set_tid_address           96
> -#define TARGET_NR_unshare                   97
> -#define TARGET_NR_futex                     98
> -#define TARGET_NR_set_robust_list           99
> -#define TARGET_NR_get_robust_list           100
> -#define TARGET_NR_nanosleep                 101
> -#define TARGET_NR_getitimer                 102
> -#define TARGET_NR_setitimer                 103
> -#define TARGET_NR_kexec_load                104
> -#define TARGET_NR_init_module               105
> -#define TARGET_NR_delete_module             106
> -#define TARGET_NR_timer_create              107
> -#define TARGET_NR_timer_gettime             108
> -#define TARGET_NR_timer_getoverrun          109
> -#define TARGET_NR_timer_settime             110
> -#define TARGET_NR_timer_delete              111
> -#define TARGET_NR_clock_settime             112
> -#define TARGET_NR_clock_gettime             113
> -#define TARGET_NR_clock_getres              114
> -#define TARGET_NR_clock_nanosleep           115
> -#define TARGET_NR_syslog                    116
> -#define TARGET_NR_ptrace                    117
> -#define TARGET_NR_sched_setparam            118
> -#define TARGET_NR_sched_setscheduler        119
> -#define TARGET_NR_sched_getscheduler        120
> -#define TARGET_NR_sched_getparam            121
> -#define TARGET_NR_sched_setaffinity         122
> -#define TARGET_NR_sched_getaffinity         123
> -#define TARGET_NR_sched_yield               124
> -#define TARGET_NR_sched_get_priority_max    125
> -#define TARGET_NR_sched_get_priority_min    126
> -#define TARGET_NR_sched_rr_get_interval     127
> -#define TARGET_NR_restart_syscall           128
> -#define TARGET_NR_kill                      129
> -#define TARGET_NR_tkill                     130
> -#define TARGET_NR_tgkill                    131
> -#define TARGET_NR_sigaltstack               132
> -#define TARGET_NR_rt_sigsuspend             133
> -#define TARGET_NR_rt_sigaction              134
> -#define TARGET_NR_rt_sigprocmask            135
> -#define TARGET_NR_rt_sigpending             136
> -#define TARGET_NR_rt_sigtimedwait           137
> -#define TARGET_NR_rt_sigqueueinfo           138
> -#define TARGET_NR_rt_sigreturn              139
> -#define TARGET_NR_setpriority               140
> -#define TARGET_NR_getpriority               141
> -#define TARGET_NR_reboot                    142
> -#define TARGET_NR_setregid                  143
> -#define TARGET_NR_setgid                    144
> -#define TARGET_NR_setreuid                  145
> -#define TARGET_NR_setuid                    146
> -#define TARGET_NR_setresuid                 147
> -#define TARGET_NR_getresuid                 148
> -#define TARGET_NR_setresgid                 149
> -#define TARGET_NR_getresgid                 150
> -#define TARGET_NR_setfsuid                  151
> -#define TARGET_NR_setfsgid                  152
> -#define TARGET_NR_times                     153
> -#define TARGET_NR_setpgid                   154
> -#define TARGET_NR_getpgid                   155
> -#define TARGET_NR_getsid                    156
> -#define TARGET_NR_setsid                    157
> -#define TARGET_NR_getgroups                 158
> -#define TARGET_NR_setgroups                 159
> -#define TARGET_NR_uname                     160
> -#define TARGET_NR_sethostname               161
> -#define TARGET_NR_setdomainname             162
> -#define TARGET_NR_getrlimit                 163
> -#define TARGET_NR_setrlimit                 164
> -#define TARGET_NR_getrusage                 165
> -#define TARGET_NR_umask                     166
> -#define TARGET_NR_prctl                     167
> -#define TARGET_NR_getcpu                    168
> -#define TARGET_NR_gettimeofday              169
> -#define TARGET_NR_settimeofday              170
> -#define TARGET_NR_adjtimex                  171
> -#define TARGET_NR_getpid                    172
> -#define TARGET_NR_getppid                   173
> -#define TARGET_NR_getuid                    174
> -#define TARGET_NR_geteuid                   175
> -#define TARGET_NR_getgid                    176
> -#define TARGET_NR_getegid                   177
> -#define TARGET_NR_gettid                    178
> -#define TARGET_NR_sysinfo                   179
> -#define TARGET_NR_mq_open                   180
> -#define TARGET_NR_mq_unlink                 181
> -#define TARGET_NR_mq_timedsend              182
> -#define TARGET_NR_mq_timedreceive           183
> -#define TARGET_NR_mq_notify                 184
> -#define TARGET_NR_mq_getsetattr             185
> -#define TARGET_NR_msgget                    186
> -#define TARGET_NR_msgctl                    187
> -#define TARGET_NR_msgrcv                    188
> -#define TARGET_NR_msgsnd                    189
> -#define TARGET_NR_semget                    190
> -#define TARGET_NR_semctl                    191
> -#define TARGET_NR_semtimedop                192
> -#define TARGET_NR_semop                     193
> -#define TARGET_NR_shmget                    194
> -#define TARGET_NR_shmctl                    195
> -#define TARGET_NR_shmat                     196
> -#define TARGET_NR_shmdt                     197
> -#define TARGET_NR_socket                    198
> -#define TARGET_NR_socketpair                199
> -#define TARGET_NR_bind                      200
> -#define TARGET_NR_listen                    201
> -#define TARGET_NR_accept                    202
> -#define TARGET_NR_connect                   203
> -#define TARGET_NR_getsockname               204
> -#define TARGET_NR_getpeername               205
> -#define TARGET_NR_sendto                    206
> -#define TARGET_NR_recvfrom                  207
> -#define TARGET_NR_setsockopt                208
> -#define TARGET_NR_getsockopt                209
> -#define TARGET_NR_shutdown                  210
> -#define TARGET_NR_sendmsg                   211
> -#define TARGET_NR_recvmsg                   212
> -#define TARGET_NR_readahead                 213
> -#define TARGET_NR_brk                       214
> -#define TARGET_NR_munmap                    215
> -#define TARGET_NR_mremap                    216
> -#define TARGET_NR_add_key                   217
> -#define TARGET_NR_request_key               218
> -#define TARGET_NR_keyctl                    219
> -#define TARGET_NR_clone                     220
> -#define TARGET_NR_execve                    221
> -#define TARGET_NR_mmap2                     222
> -#define TARGET_NR_fadvise64_64              223
> -#define TARGET_NR_swapon                    224
> -#define TARGET_NR_swapoff                   225
> -#define TARGET_NR_mprotect                  226
> -#define TARGET_NR_msync                     227
> -#define TARGET_NR_mlock                     228
> -#define TARGET_NR_munlock                   229
> -#define TARGET_NR_mlockall                  230
> -#define TARGET_NR_munlockall                231
> -#define TARGET_NR_mincore                   232
> -#define TARGET_NR_madvise                   233
> -#define TARGET_NR_remap_file_pages          234
> -#define TARGET_NR_mbind                     235
> -#define TARGET_NR_get_mempolicy             236
> -#define TARGET_NR_set_mempolicy             237
> -#define TARGET_NR_migrate_pages             238
> -#define TARGET_NR_move_pages                239
> -#define TARGET_NR_rt_tgsigqueueinfo         240
> -#define TARGET_NR_perf_event_open           241
> -#define TARGET_NR_accept4                   242
> -#define TARGET_NR_recvmmsg                  243
> -#define TARGET_NR_cacheflush                244
> -#define TARGET_NR_arch_specific_syscall     244
> -#define TARGET_NR_wait4                     260
> -#define TARGET_NR_prlimit64                 261
> -#define TARGET_NR_fanotify_init             262
> -#define TARGET_NR_fanotify_mark             263
> -#define TARGET_NR_name_to_handle_at         264
> -#define TARGET_NR_open_by_handle_at         265
> -#define TARGET_NR_clock_adjtime             266
> -#define TARGET_NR_syncfs                    267
> -#define TARGET_NR_setns                     268
> -#define TARGET_NR_sendmmsg                  269
> -#define TARGET_NR_process_vm_readv          270
> -#define TARGET_NR_process_vm_writev         271
> -#define TARGET_NR_kcmp                      272
> -#define TARGET_NR_finit_module              273
> -#define TARGET_NR_sched_setattr             274
> -#define TARGET_NR_sched_getattr             275
> -#define TARGET_NR_renameat2                 276
> -#define TARGET_NR_seccomp                   277
> -#define TARGET_NR_getrandom                 278
> -#define TARGET_NR_memfd_create              279
> -#define TARGET_NR_bpf                       280
> -#define TARGET_NR_execveat                  281
> -#define TARGET_NR_userfaultfd               282
> -#define TARGET_NR_membarrier                283
> -#define TARGET_NR_mlock2                    284
> -#define TARGET_NR_copy_file_range           285
> -#define TARGET_NR_preadv2                   286
> -#define TARGET_NR_pwritev2                  287
> -#define TARGET_NR_open                      1024
> -#define TARGET_NR_link                      1025
> -#define TARGET_NR_unlink                    1026
> -#define TARGET_NR_mknod                     1027
> -#define TARGET_NR_chmod                     1028
> -#define TARGET_NR_chown                     1029
> -#define TARGET_NR_mkdir                     1030
> -#define TARGET_NR_rmdir                     1031
> -#define TARGET_NR_lchown                    1032
> -#define TARGET_NR_access                    1033
> -#define TARGET_NR_rename                    1034
> -#define TARGET_NR_readlink                  1035
> -#define TARGET_NR_symlink                   1036
> -#define TARGET_NR_utimes                    1037
> -#define TARGET_NR_3264_stat                 1038
> -#define TARGET_NR_3264_lstat                1039
> -#define TARGET_NR_pipe                      1040
> -#define TARGET_NR_dup2                      1041
> -#define TARGET_NR_epoll_create              1042
> -#define TARGET_NR_inotify_init              1043
> -#define TARGET_NR_eventfd                   1044
> -#define TARGET_NR_signalfd                  1045
> -#define TARGET_NR_sendfile                  1046
> -#define TARGET_NR_ftruncate                 1047
> -#define TARGET_NR_truncate                  1048
> -#define TARGET_NR_stat                      1049
> -#define TARGET_NR_lstat                     1050
> -#define TARGET_NR_fstat                     1051
> -#define TARGET_NR_fcntl                     1052
> -#define TARGET_NR_fadvise64                 1053
> -#define TARGET_NR_newfstatat                1054
> -#define TARGET_NR_fstatfs                   1055
> -#define TARGET_NR_statfs                    1056
> -#define TARGET_NR_lseek                     1057
> -#define TARGET_NR_mmap                      1058
> -#define TARGET_NR_alarm                     1059
> -#define TARGET_NR_getpgrp                   1060
> -#define TARGET_NR_pause                     1061
> -#define TARGET_NR_time                      1062
> -#define TARGET_NR_utime                     1063
> -#define TARGET_NR_creat                     1064
> -#define TARGET_NR_getdents                  1065
> -#define TARGET_NR_futimesat                 1066
> -#define TARGET_NR_select                    1067
> -#define TARGET_NR_poll                      1068
> -#define TARGET_NR_epoll_wait                1069
> -#define TARGET_NR_ustat                     1070
> -#define TARGET_NR_vfork                     1071
> -#define TARGET_NR_oldwait4                  1072
> -#define TARGET_NR_recv                      1073
> -#define TARGET_NR_send                      1074
> -#define TARGET_NR_bdflush                   1075
> -#define TARGET_NR_umount                    1076
> -#define TARGET_NR_uselib                    1077
> -#define TARGET_NR__sysctl                   1078
> -#define TARGET_NR_fork                      1079
> +#define TARGET_NR_cacheflush (TARGET_NR_arch_specific_syscall)
> +#define TARGET_NR_io_setup 0
> +#define TARGET_NR_io_destroy 1
> +#define TARGET_NR_io_submit 2
> +#define TARGET_NR_io_cancel 3
> +#define TARGET_NR_io_getevents 4
> +#define TARGET_NR_setxattr 5
> +#define TARGET_NR_lsetxattr 6
> +#define TARGET_NR_fsetxattr 7
> +#define TARGET_NR_getxattr 8
> +#define TARGET_NR_lgetxattr 9
> +#define TARGET_NR_fgetxattr 10
> +#define TARGET_NR_listxattr 11
> +#define TARGET_NR_llistxattr 12
> +#define TARGET_NR_flistxattr 13
> +#define TARGET_NR_removexattr 14
> +#define TARGET_NR_lremovexattr 15
> +#define TARGET_NR_fremovexattr 16
> +#define TARGET_NR_getcwd 17
> +#define TARGET_NR_lookup_dcookie 18
> +#define TARGET_NR_eventfd2 19
> +#define TARGET_NR_epoll_create1 20
> +#define TARGET_NR_epoll_ctl 21
> +#define TARGET_NR_epoll_pwait 22
> +#define TARGET_NR_dup 23
> +#define TARGET_NR_dup3 24
> +#define TARGET_NR_fcntl64 25
> +#define TARGET_NR_inotify_init1 26
> +#define TARGET_NR_inotify_add_watch 27
> +#define TARGET_NR_inotify_rm_watch 28
> +#define TARGET_NR_ioctl 29
> +#define TARGET_NR_ioprio_set 30
> +#define TARGET_NR_ioprio_get 31
> +#define TARGET_NR_flock 32
> +#define TARGET_NR_mknodat 33
> +#define TARGET_NR_mkdirat 34
> +#define TARGET_NR_unlinkat 35
> +#define TARGET_NR_symlinkat 36
> +#define TARGET_NR_linkat 37
> +#define TARGET_NR_renameat 38
> +#define TARGET_NR_umount2 39
> +#define TARGET_NR_mount 40
> +#define TARGET_NR_pivot_root 41
> +#define TARGET_NR_nfsservctl 42
> +#define TARGET_NR_statfs64 43
> +#define TARGET_NR_fstatfs64 44
> +#define TARGET_NR_truncate64 45
> +#define TARGET_NR_ftruncate64 46
> +#define TARGET_NR_fallocate 47
> +#define TARGET_NR_faccessat 48
> +#define TARGET_NR_chdir 49
> +#define TARGET_NR_fchdir 50
> +#define TARGET_NR_chroot 51
> +#define TARGET_NR_fchmod 52
> +#define TARGET_NR_fchmodat 53
> +#define TARGET_NR_fchownat 54
> +#define TARGET_NR_fchown 55
> +#define TARGET_NR_openat 56
> +#define TARGET_NR_close 57
> +#define TARGET_NR_vhangup 58
> +#define TARGET_NR_pipe2 59
> +#define TARGET_NR_quotactl 60
> +#define TARGET_NR_getdents64 61
> +#define TARGET_NR_llseek 62
> +#define TARGET_NR_read 63
> +#define TARGET_NR_write 64
> +#define TARGET_NR_readv 65
> +#define TARGET_NR_writev 66
> +#define TARGET_NR_pread64 67
> +#define TARGET_NR_pwrite64 68
> +#define TARGET_NR_preadv 69
> +#define TARGET_NR_pwritev 70
> +#define TARGET_NR_sendfile64 71
> +#define TARGET_NR_pselect6 72
> +#define TARGET_NR_ppoll 73
> +#define TARGET_NR_signalfd4 74
> +#define TARGET_NR_vmsplice 75
> +#define TARGET_NR_splice 76
> +#define TARGET_NR_tee 77
> +#define TARGET_NR_readlinkat 78
> +#define TARGET_NR_fstatat64 79
> +#define TARGET_NR_fstat64 80
> +#define TARGET_NR_sync 81
> +#define TARGET_NR_fsync 82
> +#define TARGET_NR_fdatasync 83
> +#define TARGET_NR_sync_file_range 84
> +#define TARGET_NR_timerfd_create 85
> +#define TARGET_NR_timerfd_settime 86
> +#define TARGET_NR_timerfd_gettime 87
> +#define TARGET_NR_utimensat 88
> +#define TARGET_NR_acct 89
> +#define TARGET_NR_capget 90
> +#define TARGET_NR_capset 91
> +#define TARGET_NR_personality 92
> +#define TARGET_NR_exit 93
> +#define TARGET_NR_exit_group 94
> +#define TARGET_NR_waitid 95
> +#define TARGET_NR_set_tid_address 96
> +#define TARGET_NR_unshare 97
> +#define TARGET_NR_futex 98
> +#define TARGET_NR_set_robust_list 99
> +#define TARGET_NR_get_robust_list 100
> +#define TARGET_NR_nanosleep 101
> +#define TARGET_NR_getitimer 102
> +#define TARGET_NR_setitimer 103
> +#define TARGET_NR_kexec_load 104
> +#define TARGET_NR_init_module 105
> +#define TARGET_NR_delete_module 106
> +#define TARGET_NR_timer_create 107
> +#define TARGET_NR_timer_gettime 108
> +#define TARGET_NR_timer_getoverrun 109
> +#define TARGET_NR_timer_settime 110
> +#define TARGET_NR_timer_delete 111
> +#define TARGET_NR_clock_settime 112
> +#define TARGET_NR_clock_gettime 113
> +#define TARGET_NR_clock_getres 114
> +#define TARGET_NR_clock_nanosleep 115
> +#define TARGET_NR_syslog 116
> +#define TARGET_NR_ptrace 117
> +#define TARGET_NR_sched_setparam 118
> +#define TARGET_NR_sched_setscheduler 119
> +#define TARGET_NR_sched_getscheduler 120
> +#define TARGET_NR_sched_getparam 121
> +#define TARGET_NR_sched_setaffinity 122
> +#define TARGET_NR_sched_getaffinity 123
> +#define TARGET_NR_sched_yield 124
> +#define TARGET_NR_sched_get_priority_max 125
> +#define TARGET_NR_sched_get_priority_min 126
> +#define TARGET_NR_sched_rr_get_interval 127
> +#define TARGET_NR_restart_syscall 128
> +#define TARGET_NR_kill 129
> +#define TARGET_NR_tkill 130
> +#define TARGET_NR_tgkill 131
> +#define TARGET_NR_sigaltstack 132
> +#define TARGET_NR_rt_sigsuspend 133
> +#define TARGET_NR_rt_sigaction 134
> +#define TARGET_NR_rt_sigprocmask 135
> +#define TARGET_NR_rt_sigpending 136
> +#define TARGET_NR_rt_sigtimedwait 137
> +#define TARGET_NR_rt_sigqueueinfo 138
> +#define TARGET_NR_rt_sigreturn 139
> +#define TARGET_NR_setpriority 140
> +#define TARGET_NR_getpriority 141
> +#define TARGET_NR_reboot 142
> +#define TARGET_NR_setregid 143
> +#define TARGET_NR_setgid 144
> +#define TARGET_NR_setreuid 145
> +#define TARGET_NR_setuid 146
> +#define TARGET_NR_setresuid 147
> +#define TARGET_NR_getresuid 148
> +#define TARGET_NR_setresgid 149
> +#define TARGET_NR_getresgid 150
> +#define TARGET_NR_setfsuid 151
> +#define TARGET_NR_setfsgid 152
> +#define TARGET_NR_times 153
> +#define TARGET_NR_setpgid 154
> +#define TARGET_NR_getpgid 155
> +#define TARGET_NR_getsid 156
> +#define TARGET_NR_setsid 157
> +#define TARGET_NR_getgroups 158
> +#define TARGET_NR_setgroups 159
> +#define TARGET_NR_uname 160
> +#define TARGET_NR_sethostname 161
> +#define TARGET_NR_setdomainname 162
> +#define TARGET_NR_getrlimit 163
> +#define TARGET_NR_setrlimit 164
> +#define TARGET_NR_getrusage 165
> +#define TARGET_NR_umask 166
> +#define TARGET_NR_prctl 167
> +#define TARGET_NR_getcpu 168
> +#define TARGET_NR_gettimeofday 169
> +#define TARGET_NR_settimeofday 170
> +#define TARGET_NR_adjtimex 171
> +#define TARGET_NR_getpid 172
> +#define TARGET_NR_getppid 173
> +#define TARGET_NR_getuid 174
> +#define TARGET_NR_geteuid 175
> +#define TARGET_NR_getgid 176
> +#define TARGET_NR_getegid 177
> +#define TARGET_NR_gettid 178
> +#define TARGET_NR_sysinfo 179
> +#define TARGET_NR_mq_open 180
> +#define TARGET_NR_mq_unlink 181
> +#define TARGET_NR_mq_timedsend 182
> +#define TARGET_NR_mq_timedreceive 183
> +#define TARGET_NR_mq_notify 184
> +#define TARGET_NR_mq_getsetattr 185
> +#define TARGET_NR_msgget 186
> +#define TARGET_NR_msgctl 187
> +#define TARGET_NR_msgrcv 188
> +#define TARGET_NR_msgsnd 189
> +#define TARGET_NR_semget 190
> +#define TARGET_NR_semctl 191
> +#define TARGET_NR_semtimedop 192
> +#define TARGET_NR_semop 193
> +#define TARGET_NR_shmget 194
> +#define TARGET_NR_shmctl 195
> +#define TARGET_NR_shmat 196
> +#define TARGET_NR_shmdt 197
> +#define TARGET_NR_socket 198
> +#define TARGET_NR_socketpair 199
> +#define TARGET_NR_bind 200
> +#define TARGET_NR_listen 201
> +#define TARGET_NR_accept 202
> +#define TARGET_NR_connect 203
> +#define TARGET_NR_getsockname 204
> +#define TARGET_NR_getpeername 205
> +#define TARGET_NR_sendto 206
> +#define TARGET_NR_recvfrom 207
> +#define TARGET_NR_setsockopt 208
> +#define TARGET_NR_getsockopt 209
> +#define TARGET_NR_shutdown 210
> +#define TARGET_NR_sendmsg 211
> +#define TARGET_NR_recvmsg 212
> +#define TARGET_NR_readahead 213
> +#define TARGET_NR_brk 214
> +#define TARGET_NR_munmap 215
> +#define TARGET_NR_mremap 216
> +#define TARGET_NR_add_key 217
> +#define TARGET_NR_request_key 218
> +#define TARGET_NR_keyctl 219
> +#define TARGET_NR_clone 220
> +#define TARGET_NR_execve 221
> +#define TARGET_NR_mmap2 222
> +#define TARGET_NR_fadvise64_64 223
> +#define TARGET_NR_swapon 224
> +#define TARGET_NR_swapoff 225
> +#define TARGET_NR_mprotect 226
> +#define TARGET_NR_msync 227
> +#define TARGET_NR_mlock 228
> +#define TARGET_NR_munlock 229
> +#define TARGET_NR_mlockall 230
> +#define TARGET_NR_munlockall 231
> +#define TARGET_NR_mincore 232
> +#define TARGET_NR_madvise 233
> +#define TARGET_NR_remap_file_pages 234
> +#define TARGET_NR_mbind 235
> +#define TARGET_NR_get_mempolicy 236
> +#define TARGET_NR_set_mempolicy 237
> +#define TARGET_NR_migrate_pages 238
> +#define TARGET_NR_move_pages 239
> +#define TARGET_NR_rt_tgsigqueueinfo 240
> +#define TARGET_NR_perf_event_open 241
> +#define TARGET_NR_accept4 242
> +#define TARGET_NR_recvmmsg 243
> +#define TARGET_NR_arch_specific_syscall 244
> +#define TARGET_NR_wait4 260
> +#define TARGET_NR_prlimit64 261
> +#define TARGET_NR_fanotify_init 262
> +#define TARGET_NR_fanotify_mark 263
> +#define TARGET_NR_name_to_handle_at 264
> +#define TARGET_NR_open_by_handle_at 265
> +#define TARGET_NR_clock_adjtime 266
> +#define TARGET_NR_syncfs 267
> +#define TARGET_NR_setns 268
> +#define TARGET_NR_sendmmsg 269
> +#define TARGET_NR_process_vm_readv 270
> +#define TARGET_NR_process_vm_writev 271
> +#define TARGET_NR_kcmp 272
> +#define TARGET_NR_finit_module 273
> +#define TARGET_NR_sched_setattr 274
> +#define TARGET_NR_sched_getattr 275
> +#define TARGET_NR_renameat2 276
> +#define TARGET_NR_seccomp 277
> +#define TARGET_NR_getrandom 278
> +#define TARGET_NR_memfd_create 279
> +#define TARGET_NR_bpf 280
> +#define TARGET_NR_execveat 281
> +#define TARGET_NR_userfaultfd 282
> +#define TARGET_NR_membarrier 283
> +#define TARGET_NR_mlock2 284
> +#define TARGET_NR_copy_file_range 285
> +#define TARGET_NR_preadv2 286
> +#define TARGET_NR_pwritev2 287
> +#define TARGET_NR_pkey_mprotect 288
> +#define TARGET_NR_pkey_alloc 289
> +#define TARGET_NR_pkey_free 290
> +#define TARGET_NR_statx 291
> +#define TARGET_NR_io_pgetevents 292
> +#define TARGET_NR_rseq 293
> +#define TARGET_NR_kexec_file_load 294
> +#define TARGET_NR_clock_gettime64 403
> +#define TARGET_NR_clock_settime64 404
> +#define TARGET_NR_clock_adjtime64 405
> +#define TARGET_NR_clock_getres_time64 406
> +#define TARGET_NR_clock_nanosleep_time64 407
> +#define TARGET_NR_timer_gettime64 408
> +#define TARGET_NR_timer_settime64 409
> +#define TARGET_NR_timerfd_gettime64 410
> +#define TARGET_NR_timerfd_settime64 411
> +#define TARGET_NR_utimensat_time64 412
> +#define TARGET_NR_pselect6_time64 413
> +#define TARGET_NR_ppoll_time64 414
> +#define TARGET_NR_io_pgetevents_time64 416
> +#define TARGET_NR_recvmmsg_time64 417
> +#define TARGET_NR_mq_timedsend_time64 418
> +#define TARGET_NR_mq_timedreceive_time64 419
> +#define TARGET_NR_semtimedop_time64 420
> +#define TARGET_NR_rt_sigtimedwait_time64 421
> +#define TARGET_NR_futex_time64 422
> +#define TARGET_NR_sched_rr_get_interval_time64 423
> +#define TARGET_NR_pidfd_send_signal 424
> +#define TARGET_NR_io_uring_setup 425
> +#define TARGET_NR_io_uring_enter 426
> +#define TARGET_NR_io_uring_register 427
> +#define TARGET_NR_open_tree 428
> +#define TARGET_NR_move_mount 429
> +#define TARGET_NR_fsopen 430
> +#define TARGET_NR_fsconfig 431
> +#define TARGET_NR_fsmount 432
> +#define TARGET_NR_fspick 433
> +#define TARGET_NR_pidfd_open 434
> +#define TARGET_NR_syscalls 436
> +
> +#endif /* LINUX_USER_NIOS2_SYSCALL_NR_H */
>
> -#endif
> --
> 2.24.1
>
>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 4/4] linux-user, openrisc: sync syscall numbers with kernel v5.5
  2020-03-10 11:07 ` [PATCH 4/4] linux-user, openrisc: " Laurent Vivier
@ 2020-03-10 17:29   ` Alistair Francis
  0 siblings, 0 replies; 12+ messages in thread
From: Alistair Francis @ 2020-03-10 17:29 UTC (permalink / raw)
  To: Laurent Vivier
  Cc: Marek Vasut, Peter Maydell, Jia Liu, Riku Voipio,
	qemu-devel@nongnu.org Developers, Alistair Francis

On Tue, Mar 10, 2020 at 4:09 AM Laurent Vivier <laurent@vivier.eu> wrote:
>
> Use helper script scripts/gensyscalls.sh to generate the file.
>
> Add TARGET_NR_or1k_atomic
> Remove useless comments and blank lines.
> Define diretly the __NR_XXX64 syscalls rather than using the
> intermediate __NR3264 definition.
>
> Remove wrong cut'n'paste (like "#ifdef __ARCH_WANT_SYNC_FILE_RANGE2")
>
> Add new syscalls from 286 (preadv) to 434 (pidfd_open).
>
> Remove obsolete syscalls 1204 (open) to 1079 (fork).
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>

Alistair

> ---
>  linux-user/openrisc/syscall_nr.h | 307 ++++++-------------------------
>  1 file changed, 60 insertions(+), 247 deletions(-)
>
> diff --git a/linux-user/openrisc/syscall_nr.h b/linux-user/openrisc/syscall_nr.h
> index 7763dbcfd8b3..a4b614005d69 100644
> --- a/linux-user/openrisc/syscall_nr.h
> +++ b/linux-user/openrisc/syscall_nr.h
> @@ -1,13 +1,15 @@
> +/*
> + * This file contains the system call numbers.
> + */
>  #ifndef LINUX_USER_OPENRISC_SYSCALL_NR_H
>  #define LINUX_USER_OPENRISC_SYSCALL_NR_H
>
>  #define TARGET_NR_io_setup 0
> +#define TARGET_NR_or1k_atomic TARGET_NR_arch_specific_syscall
>  #define TARGET_NR_io_destroy 1
>  #define TARGET_NR_io_submit 2
>  #define TARGET_NR_io_cancel 3
>  #define TARGET_NR_io_getevents 4
> -
> -/* fs/xattr.c */
>  #define TARGET_NR_setxattr 5
>  #define TARGET_NR_lsetxattr 6
>  #define TARGET_NR_fsetxattr 7
> @@ -20,63 +22,36 @@
>  #define TARGET_NR_removexattr 14
>  #define TARGET_NR_lremovexattr 15
>  #define TARGET_NR_fremovexattr 16
> -
> -/* fs/dcache.c */
>  #define TARGET_NR_getcwd 17
> -
> -/* fs/cookies.c */
>  #define TARGET_NR_lookup_dcookie 18
> -
> -/* fs/eventfd.c */
>  #define TARGET_NR_eventfd2 19
> -
> -/* fs/eventpoll.c */
>  #define TARGET_NR_epoll_create1 20
>  #define TARGET_NR_epoll_ctl 21
>  #define TARGET_NR_epoll_pwait 22
> -
> -/* fs/fcntl.c */
>  #define TARGET_NR_dup 23
>  #define TARGET_NR_dup3 24
> -#define TARGET_NR_3264_fcntl 25
> -
> -/* fs/inotify_user.c */
> +#define TARGET_NR_fcntl64 25
>  #define TARGET_NR_inotify_init1 26
>  #define TARGET_NR_inotify_add_watch 27
>  #define TARGET_NR_inotify_rm_watch 28
> -
> -/* fs/ioctl.c */
>  #define TARGET_NR_ioctl 29
> -
> -/* fs/ioprio.c */
>  #define TARGET_NR_ioprio_set 30
>  #define TARGET_NR_ioprio_get 31
> -
> -/* fs/locks.c */
>  #define TARGET_NR_flock 32
> -
> -/* fs/namei.c */
>  #define TARGET_NR_mknodat 33
>  #define TARGET_NR_mkdirat 34
>  #define TARGET_NR_unlinkat 35
>  #define TARGET_NR_symlinkat 36
>  #define TARGET_NR_linkat 37
>  #define TARGET_NR_renameat 38
> -
> -/* fs/namespace.c */
>  #define TARGET_NR_umount2 39
>  #define TARGET_NR_mount 40
>  #define TARGET_NR_pivot_root 41
> -
> -/* fs/nfsctl.c */
>  #define TARGET_NR_nfsservctl 42
> -
> -/* fs/open.c */
> -#define TARGET_NR_3264_statfs 43
> -#define TARGET_NR_3264_fstatfs 44
> -#define TARGET_NR_3264_truncate 45
> -#define TARGET_NR_3264_ftruncate 46
> -
> +#define TARGET_NR_statfs64 43
> +#define TARGET_NR_fstatfs64 44
> +#define TARGET_NR_truncate64 45
> +#define TARGET_NR_ftruncate64 46
>  #define TARGET_NR_fallocate 47
>  #define TARGET_NR_faccessat 48
>  #define TARGET_NR_chdir 49
> @@ -89,18 +64,10 @@
>  #define TARGET_NR_openat 56
>  #define TARGET_NR_close 57
>  #define TARGET_NR_vhangup 58
> -
> -/* fs/pipe.c */
>  #define TARGET_NR_pipe2 59
> -
> -/* fs/quota.c */
>  #define TARGET_NR_quotactl 60
> -
> -/* fs/readdir.c */
>  #define TARGET_NR_getdents64 61
> -
> -/* fs/read_write.c */
> -#define TARGET_NR_3264_lseek 62
> +#define TARGET_NR_llseek 62
>  #define TARGET_NR_read 63
>  #define TARGET_NR_write 64
>  #define TARGET_NR_readv 65
> @@ -109,85 +76,42 @@
>  #define TARGET_NR_pwrite64 68
>  #define TARGET_NR_preadv 69
>  #define TARGET_NR_pwritev 70
> -
> -/* fs/sendfile.c */
> -#define TARGET_NR_3264_sendfile 71
> -
> -/* fs/select.c */
> +#define TARGET_NR_sendfile64 71
>  #define TARGET_NR_pselect6 72
>  #define TARGET_NR_ppoll 73
> -
> -/* fs/signalfd.c */
>  #define TARGET_NR_signalfd4 74
> -
> -/* fs/splice.c */
>  #define TARGET_NR_vmsplice 75
>  #define TARGET_NR_splice 76
>  #define TARGET_NR_tee 77
> -
> -/* fs/stat.c */
>  #define TARGET_NR_readlinkat 78
> -#define TARGET_NR_3264_fstatat 79
> -#define TARGET_NR_3264_fstat 80
> -
> -/* fs/sync.c */
> +#define TARGET_NR_fstatat64 79
> +#define TARGET_NR_fstat64 80
>  #define TARGET_NR_sync 81
>  #define TARGET_NR_fsync 82
>  #define TARGET_NR_fdatasync 83
> -
> -#ifdef __ARCH_WANT_SYNC_FILE_RANGE2
> -#define TARGET_NR_sync_file_range2 84
> -#else
>  #define TARGET_NR_sync_file_range 84
> -#endif
> -
> -/* fs/timerfd.c */
>  #define TARGET_NR_timerfd_create 85
>  #define TARGET_NR_timerfd_settime 86
>  #define TARGET_NR_timerfd_gettime 87
> -
> -/* fs/utimes.c */
>  #define TARGET_NR_utimensat 88
> -
> -/* kernel/acct.c */
>  #define TARGET_NR_acct 89
> -
> -/* kernel/capability.c */
>  #define TARGET_NR_capget 90
>  #define TARGET_NR_capset 91
> -
> -/* kernel/exec_domain.c */
>  #define TARGET_NR_personality 92
> -
> -/* kernel/exit.c */
>  #define TARGET_NR_exit 93
>  #define TARGET_NR_exit_group 94
>  #define TARGET_NR_waitid 95
> -
> -/* kernel/fork.c */
>  #define TARGET_NR_set_tid_address 96
>  #define TARGET_NR_unshare 97
> -
> -/* kernel/futex.c */
>  #define TARGET_NR_futex 98
>  #define TARGET_NR_set_robust_list 99
>  #define TARGET_NR_get_robust_list 100
> -
> -/* kernel/hrtimer.c */
>  #define TARGET_NR_nanosleep 101
> -
> -/* kernel/itimer.c */
>  #define TARGET_NR_getitimer 102
>  #define TARGET_NR_setitimer 103
> -
> -/* kernel/kexec.c */
>  #define TARGET_NR_kexec_load 104
> -
> -/* kernel/module.c */
>  #define TARGET_NR_init_module 105
>  #define TARGET_NR_delete_module 106
> -
> -/* kernel/posix-timers.c */
>  #define TARGET_NR_timer_create 107
>  #define TARGET_NR_timer_gettime 108
>  #define TARGET_NR_timer_getoverrun 109
> @@ -197,14 +121,8 @@
>  #define TARGET_NR_clock_gettime 113
>  #define TARGET_NR_clock_getres 114
>  #define TARGET_NR_clock_nanosleep 115
> -
> -/* kernel/printk.c */
>  #define TARGET_NR_syslog 116
> -
> -/* kernel/ptrace.c */
>  #define TARGET_NR_ptrace 117
> -
> -/* kernel/sched.c */
>  #define TARGET_NR_sched_setparam 118
>  #define TARGET_NR_sched_setscheduler 119
>  #define TARGET_NR_sched_getscheduler 120
> @@ -215,8 +133,6 @@
>  #define TARGET_NR_sched_get_priority_max 125
>  #define TARGET_NR_sched_get_priority_min 126
>  #define TARGET_NR_sched_rr_get_interval 127
> -
> -/* kernel/signal.c */
>  #define TARGET_NR_restart_syscall 128
>  #define TARGET_NR_kill 129
>  #define TARGET_NR_tkill 130
> @@ -229,8 +145,6 @@
>  #define TARGET_NR_rt_sigtimedwait 137
>  #define TARGET_NR_rt_sigqueueinfo 138
>  #define TARGET_NR_rt_sigreturn 139
> -
> -/* kernel/sys.c */
>  #define TARGET_NR_setpriority 140
>  #define TARGET_NR_getpriority 141
>  #define TARGET_NR_reboot 142
> @@ -260,13 +174,9 @@
>  #define TARGET_NR_umask 166
>  #define TARGET_NR_prctl 167
>  #define TARGET_NR_getcpu 168
> -
> -/* kernel/time.c */
>  #define TARGET_NR_gettimeofday 169
>  #define TARGET_NR_settimeofday 170
>  #define TARGET_NR_adjtimex 171
> -
> -/* kernel/timer.c */
>  #define TARGET_NR_getpid 172
>  #define TARGET_NR_getppid 173
>  #define TARGET_NR_getuid 174
> @@ -275,34 +185,24 @@
>  #define TARGET_NR_getegid 177
>  #define TARGET_NR_gettid 178
>  #define TARGET_NR_sysinfo 179
> -
> -/* ipc/mqueue.c */
>  #define TARGET_NR_mq_open 180
>  #define TARGET_NR_mq_unlink 181
>  #define TARGET_NR_mq_timedsend 182
>  #define TARGET_NR_mq_timedreceive 183
>  #define TARGET_NR_mq_notify 184
>  #define TARGET_NR_mq_getsetattr 185
> -
> -/* ipc/msg.c */
>  #define TARGET_NR_msgget 186
>  #define TARGET_NR_msgctl 187
>  #define TARGET_NR_msgrcv 188
>  #define TARGET_NR_msgsnd 189
> -
> -/* ipc/sem.c */
>  #define TARGET_NR_semget 190
>  #define TARGET_NR_semctl 191
>  #define TARGET_NR_semtimedop 192
>  #define TARGET_NR_semop 193
> -
> -/* ipc/shm.c */
>  #define TARGET_NR_shmget 194
>  #define TARGET_NR_shmctl 195
>  #define TARGET_NR_shmat 196
>  #define TARGET_NR_shmdt 197
> -
> -/* net/socket.c */
>  #define TARGET_NR_socket 198
>  #define TARGET_NR_socketpair 199
>  #define TARGET_NR_bind 200
> @@ -318,30 +218,17 @@
>  #define TARGET_NR_shutdown 210
>  #define TARGET_NR_sendmsg 211
>  #define TARGET_NR_recvmsg 212
> -
> -/* mm/filemap.c */
>  #define TARGET_NR_readahead 213
> -
> -/* mm/nommu.c, also with MMU */
>  #define TARGET_NR_brk 214
>  #define TARGET_NR_munmap 215
>  #define TARGET_NR_mremap 216
> -
> -/* security/keys/keyctl.c */
>  #define TARGET_NR_add_key 217
>  #define TARGET_NR_request_key 218
>  #define TARGET_NR_keyctl 219
> -
> -/* arch/example/kernel/sys_example.c */
>  #define TARGET_NR_clone 220
>  #define TARGET_NR_execve 221
> -
> -#define TARGET_NR_3264_mmap 222
> -/* mm/fadvise.c */
> -#define TARGET_NR_3264_fadvise64 223
> -
> -/* mm/, CONFIG_MMU only */
> -#ifndef __ARCH_NOMMU
> +#define TARGET_NR_mmap2 222
> +#define TARGET_NR_fadvise64_64 223
>  #define TARGET_NR_swapon 224
>  #define TARGET_NR_swapoff 225
>  #define TARGET_NR_mprotect 226
> @@ -358,25 +245,17 @@
>  #define TARGET_NR_set_mempolicy 237
>  #define TARGET_NR_migrate_pages 238
>  #define TARGET_NR_move_pages 239
> -#endif
> -
>  #define TARGET_NR_rt_tgsigqueueinfo 240
>  #define TARGET_NR_perf_event_open 241
>  #define TARGET_NR_accept4 242
>  #define TARGET_NR_recvmmsg 243
> -
> -/*
> - * Architectures may provide up to 16 syscalls of their own
> - * starting with this value.
> - */
>  #define TARGET_NR_arch_specific_syscall 244
> -
>  #define TARGET_NR_wait4 260
>  #define TARGET_NR_prlimit64 261
>  #define TARGET_NR_fanotify_init 262
>  #define TARGET_NR_fanotify_mark 263
> -#define TARGET_NR_name_to_handle_at         264
> -#define TARGET_NR_open_by_handle_at         265
> +#define TARGET_NR_name_to_handle_at 264
> +#define TARGET_NR_open_by_handle_at 265
>  #define TARGET_NR_clock_adjtime 266
>  #define TARGET_NR_syncfs 267
>  #define TARGET_NR_setns 268
> @@ -397,113 +276,47 @@
>  #define TARGET_NR_membarrier 283
>  #define TARGET_NR_mlock2 284
>  #define TARGET_NR_copy_file_range 285
> +#define TARGET_NR_preadv2 286
> +#define TARGET_NR_pwritev2 287
> +#define TARGET_NR_pkey_mprotect 288
> +#define TARGET_NR_pkey_alloc 289
> +#define TARGET_NR_pkey_free 290
> +#define TARGET_NR_statx 291
> +#define TARGET_NR_io_pgetevents 292
> +#define TARGET_NR_rseq 293
> +#define TARGET_NR_kexec_file_load 294
> +#define TARGET_NR_clock_gettime64 403
> +#define TARGET_NR_clock_settime64 404
> +#define TARGET_NR_clock_adjtime64 405
> +#define TARGET_NR_clock_getres_time64 406
> +#define TARGET_NR_clock_nanosleep_time64 407
> +#define TARGET_NR_timer_gettime64 408
> +#define TARGET_NR_timer_settime64 409
> +#define TARGET_NR_timerfd_gettime64 410
> +#define TARGET_NR_timerfd_settime64 411
> +#define TARGET_NR_utimensat_time64 412
> +#define TARGET_NR_pselect6_time64 413
> +#define TARGET_NR_ppoll_time64 414
> +#define TARGET_NR_io_pgetevents_time64 416
> +#define TARGET_NR_recvmmsg_time64 417
> +#define TARGET_NR_mq_timedsend_time64 418
> +#define TARGET_NR_mq_timedreceive_time64 419
> +#define TARGET_NR_semtimedop_time64 420
> +#define TARGET_NR_rt_sigtimedwait_time64 421
> +#define TARGET_NR_futex_time64 422
> +#define TARGET_NR_sched_rr_get_interval_time64 423
> +#define TARGET_NR_pidfd_send_signal 424
> +#define TARGET_NR_io_uring_setup 425
> +#define TARGET_NR_io_uring_enter 426
> +#define TARGET_NR_io_uring_register 427
> +#define TARGET_NR_open_tree 428
> +#define TARGET_NR_move_mount 429
> +#define TARGET_NR_fsopen 430
> +#define TARGET_NR_fsconfig 431
> +#define TARGET_NR_fsmount 432
> +#define TARGET_NR_fspick 433
> +#define TARGET_NR_pidfd_open 434
> +#define TARGET_NR_syscalls 436
> +
> +#endif /* LINUX_USER_OPENRISC_SYSCALL_NR_H */
>
> -/*
> - * All syscalls below here should go away really,
> - * these are provided for both review and as a porting
> - * help for the C library version.
> -*
> - * Last chance: are any of these important enough to
> - * enable by default?
> - */
> -#define TARGET_NR_open 1024
> -#define TARGET_NR_link 1025
> -#define TARGET_NR_unlink 1026
> -#define TARGET_NR_mknod 1027
> -#define TARGET_NR_chmod 1028
> -#define TARGET_NR_chown 1029
> -#define TARGET_NR_mkdir 1030
> -#define TARGET_NR_rmdir 1031
> -#define TARGET_NR_lchown 1032
> -#define TARGET_NR_access 1033
> -#define TARGET_NR_rename 1034
> -#define TARGET_NR_readlink 1035
> -#define TARGET_NR_symlink 1036
> -#define TARGET_NR_utimes 1037
> -#define TARGET_NR_3264_stat 1038
> -#define TARGET_NR_3264_lstat 1039
> -
> -#define TARGET_NR_pipe 1040
> -#define TARGET_NR_dup2 1041
> -#define TARGET_NR_epoll_create 1042
> -#define TARGET_NR_inotify_init 1043
> -#define TARGET_NR_eventfd 1044
> -#define TARGET_NR_signalfd 1045
> -
> -#define TARGET_NR_sendfile 1046
> -#define TARGET_NR_ftruncate 1047
> -#define TARGET_NR_truncate 1048
> -#define TARGET_NR_stat 1049
> -#define TARGET_NR_lstat 1050
> -#define TARGET_NR_fstat 1051
> -#define TARGET_NR_fcntl 1052
> -#define TARGET_NR_fadvise64 1053
> -#define __ARCH_WANT_SYS_FADVISE64
> -#define TARGET_NR_newfstatat 1054
> -#define __ARCH_WANT_SYS_NEWFSTATAT
> -#define TARGET_NR_fstatfs 1055
> -#define TARGET_NR_statfs 1056
> -#define TARGET_NR_lseek 1057
> -#define TARGET_NR_mmap 1058
> -
> -#define TARGET_NR_alarm 1059
> -#define __ARCH_WANT_SYS_ALARM
> -#define TARGET_NR_getpgrp 1060
> -#define __ARCH_WANT_SYS_GETPGRP
> -#define TARGET_NR_pause 1061
> -#define __ARCH_WANT_SYS_PAUSE
> -#define TARGET_NR_time 1062
> -#define __ARCH_WANT_SYS_TIME
> -#define __ARCH_WANT_COMPAT_SYS_TIME
> -#define TARGET_NR_utime 1063
> -#define __ARCH_WANT_SYS_UTIME
> -
> -#define TARGET_NR_creat 1064
> -#define TARGET_NR_getdents 1065
> -#define __ARCH_WANT_SYS_GETDENTS
> -#define TARGET_NR_futimesat 1066
> -#define TARGET_NR_poll 1068
> -#define TARGET_NR_epoll_wait 1069
> -#define TARGET_NR_ustat 1070
> -#define TARGET_NR_vfork 1071
> -#define TARGET_NR_oldwait4 1072
> -#define TARGET_NR_recv 1073
> -#define TARGET_NR_send 1074
> -#define TARGET_NR_bdflush 1075
> -#define TARGET_NR_umount 1076
> -#define __ARCH_WANT_SYS_OLDUMOUNT
> -#define TARGET_NR_uselib 1077
> -#define TARGET_NR__sysctl 1078
> -
> -#define TARGET_NR_fork 1079
> -
> -
> -/*
> - * 32 bit systems traditionally used different
> - * syscalls for off_t and loff_t arguments, while
> - * 64 bit systems only need the off_t version.
> - * For new 32 bit platforms, there is no need to
> - * implement the old 32 bit off_t syscalls, so
> - * they take different names.
> - * Here we map the numbers so that both versions
> - * use the same syscall table layout.
> - */
> -
> -#define TARGET_NR_fcntl64 TARGET_NR_3264_fcntl
> -#define TARGET_NR_statfs64 TARGET_NR_3264_statfs
> -#define TARGET_NR_fstatfs64 TARGET_NR_3264_fstatfs
> -#define TARGET_NR_truncate64 TARGET_NR_3264_truncate
> -#define TARGET_NR_ftruncate64 TARGET_NR_3264_ftruncate
> -#define TARGET_NR_llseek TARGET_NR_3264_lseek
> -#define TARGET_NR_sendfile64 TARGET_NR_3264_sendfile
> -#define TARGET_NR_fstatat64 TARGET_NR_3264_fstatat
> -#define TARGET_NR_fstat64 TARGET_NR_3264_fstat
> -#define TARGET_NR_mmap2 TARGET_NR_3264_mmap
> -#define TARGET_NR_fadvise64_64 TARGET_NR_3264_fadvise64
> -
> -#ifdef TARGET_NR_3264_stat
> -#define TARGET_NR_stat64 TARGET_NR_3264_stat
> -#define TARGET_NR_lstat64 TARGET_NR_3264_lstat
> -#endif
> -
> -#endif
> --
> 2.24.1
>
>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: [PATCH 1/4] scripts: add a script to generate syscall_nr.h
  2020-03-10 11:07 ` [PATCH 1/4] scripts: add a script to generate syscall_nr.h Laurent Vivier
  2020-03-10 17:25   ` Alistair Francis
@ 2020-03-11 13:09   ` Taylor Simpson
  1 sibling, 0 replies; 12+ messages in thread
From: Taylor Simpson @ 2020-03-11 13:09 UTC (permalink / raw)
  To: Laurent Vivier, qemu-devel
  Cc: Marek Vasut, Peter Maydell, Riku Voipio, Alistair Francis, Jia Liu

Reviewed-by: Taylor Simpson <tsimpson@quicinc.com>

> -----Original Message-----
> From: Qemu-devel <qemu-devel-
> bounces+tsimpson=quicinc.com@nongnu.org> On Behalf Of Laurent Vivier
> Sent: Tuesday, March 10, 2020 6:08 AM
> To: qemu-devel@nongnu.org
> Cc: Marek Vasut <marex@denx.de>; Peter Maydell
> <peter.maydell@linaro.org>; Jia Liu <proljc@gmail.com>; Riku Voipio
> <riku.voipio@iki.fi>; Laurent Vivier <laurent@vivier.eu>; Alistair Francis
> <alistair.francis@wdc.com>
> Subject: [PATCH 1/4] scripts: add a script to generate syscall_nr.h
>
> This script is needed for targets based on asm-generic syscall numbers
> generation
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  scripts/gensyscalls.sh | 94
> ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 94 insertions(+)
>  create mode 100755 scripts/gensyscalls.sh
>
> diff --git a/scripts/gensyscalls.sh b/scripts/gensyscalls.sh
> new file mode 100755
> index 000000000000..3b549a665d0f
> --- /dev/null
> +++ b/scripts/gensyscalls.sh
> @@ -0,0 +1,94 @@
> +#!/bin/sh
> +

Include the license

> +linux="$1"
> +output="$2"
> +
> +TMP=$(mktemp -d)
> +
> +if [ "$linux" = "" ] ; then
> +    echo "Needs path to linux source tree" 1>&2
> +    exit 1
> +fi
> +
> +if [ "$output" = "" ] ; then
> +    output="$PWD"
> +fi
> +
> +upper()
> +{
> +    echo "$1" | tr "[:lower:]" "[:upper:]" | tr "[:punct:]" "_"
> +}
> +
> +qemu_arch()
> +{
> +    case "$1" in
> +    arm64)
> +        echo "aarch64"
> +        ;;
> +    *)
> +        upper "$1"
> +        ;;
> +    esac
> +}
> +
> +read_includes()
> +{
> +    arch=$1
> +    bits=$2
> +
> +     cpp -P -nostdinc -fdirectives-only \
> +        -D_UAPI_ASM_$(upper ${arch})_BITSPERLONG_H \
> +        -D__BITS_PER_LONG=${bits} \
> +        -I${linux}/arch/${arch}/include/uapi/ \
> +        -I${linux}/include/uapi \
> +        -I${TMP} \
> +        "${linux}/arch/${arch}/include/uapi/asm/unistd.h"
> +}
> +
> +filter_defines()
> +{
> +    grep -e "#define __NR_" -e "#define __NR3264"
> +}
> +
> +rename_defines()
> +{
> +    sed "s/ __NR_/ TARGET_NR_/g;s/(__NR_/(TARGET_NR_/g"
> +}
> +
> +evaluate_values()
> +{
> +    sed "s/#define TARGET_NR_/QEMU TARGET_NR_/" | \
> +    cpp -P -nostdinc | \
> +    sed "s/^QEMU /#define /"
> +}
> +
> +generate_syscall_nr()
> +{
> +    arch=$1
> +    bits=$2
> +    file="$3"
> +    guard="$(upper LINUX_USER_$(qemu_arch $arch)_$(basename
> "$file"))"
> +
> +    (echo "/*"
> +    echo " * This file contains the system call numbers."

echo " * Do not modify."
echo " * This file is generated by: <qemu>/scripts/gensyscalls.sh ${linux} ${output}"

> +    echo " */"
> +    echo "#ifndef ${guard}"
> +    echo "#define ${guard}"
> +    echo
> +    read_includes $arch $bits | filter_defines | rename_defines | \
> +                                evaluate_values | sort -n -k 3
> +    echo
> +    echo "#endif /* ${guard} */"
> +    echo) > "$file"
> +}
> +
> +mkdir "$TMP/asm"
> +> "$TMP/asm/bitsperlong.h"
> +
> +generate_syscall_nr arm64 64 "$output/linux-user/aarch64/syscall_nr.h"
> +generate_syscall_nr nios2 32 "$output/linux-user/nios2/syscall_nr.h"
> +generate_syscall_nr openrisc 32 "$output/linux-user/openrisc/syscall_nr.h"
> +
> +generate_syscall_nr riscv 32 "$output/linux-user/riscv/syscall32_nr.h"
> +generate_syscall_nr riscv 64 "$output/linux-user/riscv/syscall64_nr.h"
> +rm -fr "$TMP"
> --
> 2.24.1
>
>



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h
  2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
                   ` (4 preceding siblings ...)
  2020-03-10 11:54 ` [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h no-reply
@ 2020-03-13 22:05 ` Laurent Vivier
  5 siblings, 0 replies; 12+ messages in thread
From: Laurent Vivier @ 2020-03-13 22:05 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marek Vasut, Peter Maydell, Riku Voipio, Alistair Francis, Jia Liu

Le 10/03/2020 à 12:07, Laurent Vivier a écrit :
> This series adds a script to generate syscall_nr.h for
> architectures that don't use syscall.tbl but asm-generic/unistd.h
> 
> The script uses several cpp passes and filters result with a grep/sed/tr sequence.
> The result must be checked before being used, so it's why the script is not
> automatically run.
> 
> I have run the script, checked and added new files for arm64, nios2, openrisc.
> 
> I don't include result for riscv as Alistair is already working on a series
> for this architecture and it needs some changes in syscall.c as some
> syscalls are not defined.
> 
> We also need to add the _time64 variant of syscalls added by the update of the
> syscall_nr.h.
> 
> Based-on: <20200310103403.3284090-1-laurent@vivier.eu>
> 
> Laurent Vivier (4):
>   scripts: add a script to generate syscall_nr.h
>   linux-user,aarch64: sync syscall numbers with kernel v5.5
>   linux-user,nios2: sync syscall numbers with kernel v5.5
>   linux-user,openrisc: sync syscall numbers with kernel v5.5
> 
>  linux-user/aarch64/syscall_nr.h  |  32 +-
>  linux-user/nios2/syscall_nr.h    | 648 +++++++++++++++----------------
>  linux-user/openrisc/syscall_nr.h | 307 +++------------
>  scripts/gensyscalls.sh           |  94 +++++
>  4 files changed, 499 insertions(+), 582 deletions(-)
>  create mode 100755 scripts/gensyscalls.sh
> 

Applied the whole series to my linux-user branch.

Thanks,
Laurent




^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2020-03-13 22:06 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-10 11:07 [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h Laurent Vivier
2020-03-10 11:07 ` [PATCH 1/4] scripts: add a script to generate syscall_nr.h Laurent Vivier
2020-03-10 17:25   ` Alistair Francis
2020-03-11 13:09   ` Taylor Simpson
2020-03-10 11:07 ` [PATCH 2/4] linux-user, aarch64: sync syscall numbers with kernel v5.5 Laurent Vivier
2020-03-10 17:26   ` Alistair Francis
2020-03-10 11:07 ` [PATCH 3/4] linux-user,nios2: " Laurent Vivier
2020-03-10 17:27   ` [PATCH 3/4] linux-user, nios2: " Alistair Francis
2020-03-10 11:07 ` [PATCH 4/4] linux-user, openrisc: " Laurent Vivier
2020-03-10 17:29   ` Alistair Francis
2020-03-10 11:54 ` [PATCH 0/4] linux-user: generate syscall_nr.h from linux unistd.h no-reply
2020-03-13 22:05 ` Laurent Vivier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.