mbox series

[v5,0/8] linux-user: Split do_syscall

Message ID 20181219042113.7364-1-richard.henderson@linaro.org (mailing list archive)
Headers show
Series linux-user: Split do_syscall | expand

Message

Richard Henderson Dec. 19, 2018, 4:21 a.m. UTC
Version 4 was back in August:
https://lists.gnu.org/archive/html/qemu-devel/2018-08/msg03745.html

Version 5 continues the file split via inclusion.  This incorporates
Laurent's suggestion to have a "def" file that is included twice to
generate both SyscallDef structures and fill in syscall_table's switch.

Again, this just converts a few syscalls as proof of concept.


r~


Richard Henderson (8):
  linux-user: Setup split syscall infrastructure
  linux-user: Split out some simple file syscalls
  linux-user: Reduce regpairs_aligned & target_offset64 ifdefs
  linux-user: Split out preadv, pwritev, readv, writev, pread64,
    pwrite64
  linux-user: Split out name_to_handle_at, open_by_handle_at
  linux-user: Split out ipc syscalls
  linux-user: Split out memory syscalls
  linux-user: Split out some process syscalls

 linux-user/syscall-defs.h     |  231 +++
 linux-user/syscall.h          |   93 ++
 linux-user/strace.c           |  567 ++++----
 linux-user/syscall-file.inc.c |  638 +++++++++
 linux-user/syscall-ipc.inc.c  | 1086 ++++++++++++++
 linux-user/syscall-mem.inc.c  |  154 ++
 linux-user/syscall-proc.inc.c |  861 ++++++++++++
 linux-user/syscall.c          | 2500 ++-------------------------------
 linux-user/strace.list        |  243 ----
 9 files changed, 3499 insertions(+), 2874 deletions(-)
 create mode 100644 linux-user/syscall-defs.h
 create mode 100644 linux-user/syscall.h
 create mode 100644 linux-user/syscall-file.inc.c
 create mode 100644 linux-user/syscall-ipc.inc.c
 create mode 100644 linux-user/syscall-mem.inc.c
 create mode 100644 linux-user/syscall-proc.inc.c

Comments

no-reply@patchew.org Dec. 25, 2018, 3:19 a.m. UTC | #1
Patchew URL: https://patchew.org/QEMU/20181219042113.7364-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Message-id: 20181219042113.7364-1-richard.henderson@linaro.org
Type: series
Subject: [Qemu-devel] [PATCH v5 0/8] linux-user: Split do_syscall

=== TEST SCRIPT BEGIN ===
#!/bin/bash

BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0

git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram

commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
    echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..."
    if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
        failed=1
        echo
    fi
    n=$((n+1))
done

exit $failed
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
Switched to a new branch 'test'
f3bfd9f linux-user: Split out some process syscalls
d97db89 linux-user: Split out memory syscalls
cb634c4 linux-user: Split out ipc syscalls
5659cc8 linux-user: Split out name_to_handle_at, open_by_handle_at
67a51d4 linux-user: Split out preadv, pwritev, readv, writev, pread64, pwrite64
677dbe4 linux-user: Reduce regpairs_aligned & target_offset64 ifdefs
caa6f94 linux-user: Split out some simple file syscalls
b9d74dd linux-user: Setup split syscall infrastructure

=== OUTPUT BEGIN ===
Checking PATCH 1/8: linux-user: Setup split syscall infrastructure...
ERROR: Macros with complex values should be enclosed in parenthesis
#568: FILE: linux-user/syscall.c:11530:
+#define SYSCALL_DEF(NAME, ...)  case TARGET_NR_##NAME: return &def_##NAME

WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#647: 
new file mode 100644

total: 1 errors, 1 warnings, 706 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

Checking PATCH 2/8: linux-user: Split out some simple file syscalls...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#12: 
new file mode 100644

total: 0 errors, 1 warnings, 882 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Checking PATCH 3/8: linux-user: Reduce regpairs_aligned & target_offset64 ifdefs...
Checking PATCH 4/8: linux-user: Split out preadv, pwritev, readv, writev, pread64, pwrite64...
Checking PATCH 5/8: linux-user: Split out name_to_handle_at, open_by_handle_at...
Checking PATCH 6/8: linux-user: Split out ipc syscalls...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#259: 
new file mode 100644

WARNING: architecture specific defines should be avoided
#283: FILE: linux-user/syscall-ipc.inc.c:20:
+#ifdef __NR_msgsnd

total: 0 errors, 2 warnings, 2320 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Checking PATCH 7/8: linux-user: Split out memory syscalls...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#203: 
new file mode 100644

total: 0 errors, 1 warnings, 474 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Checking PATCH 8/8: linux-user: Split out some process syscalls...
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#476: 
new file mode 100644

WARNING: architecture specific defines should be avoided
#509: FILE: linux-user/syscall-proc.inc.c:29:
+#ifdef __NR_setuid32

WARNING: architecture specific defines should be avoided
#514: FILE: linux-user/syscall-proc.inc.c:34:
+#ifdef __NR_setgid32

WARNING: architecture specific defines should be avoided
#519: FILE: linux-user/syscall-proc.inc.c:39:
+#ifdef __NR_setresuid32

WARNING: architecture specific defines should be avoided
#524: FILE: linux-user/syscall-proc.inc.c:44:
+#ifdef __NR_setresgid32

WARNING: architecture specific defines should be avoided
#535: FILE: linux-user/syscall-proc.inc.c:55:
+#ifndef __NR_gettid

WARNING: architecture specific defines should be avoided
#540: FILE: linux-user/syscall-proc.inc.c:60:
+#ifndef __NR_set_tid_address

total: 0 errors, 7 warnings, 2103 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20181219042113.7364-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Laurent Vivier Jan. 9, 2019, 9:50 a.m. UTC | #2
On 19/12/2018 05:21, Richard Henderson wrote:
> Version 4 was back in August:
> https://lists.gnu.org/archive/html/qemu-devel/2018-08/msg03745.html
> 
> Version 5 continues the file split via inclusion.  This incorporates
> Laurent's suggestion to have a "def" file that is included twice to
> generate both SyscallDef structures and fill in syscall_table's switch.
> 
> Again, this just converts a few syscalls as proof of concept.

This series breaks on all targets LTP tests: getgroups01, pwritev02,
pwritev02_64, and fixes: semop02.

It also breaks more tests only with arm target.

I will bisect and review...

Thanks,
Laurent

> 
> 
> r~
> 
> 
> Richard Henderson (8):
>   linux-user: Setup split syscall infrastructure
>   linux-user: Split out some simple file syscalls
>   linux-user: Reduce regpairs_aligned & target_offset64 ifdefs
>   linux-user: Split out preadv, pwritev, readv, writev, pread64,
>     pwrite64
>   linux-user: Split out name_to_handle_at, open_by_handle_at
>   linux-user: Split out ipc syscalls
>   linux-user: Split out memory syscalls
>   linux-user: Split out some process syscalls
> 
>  linux-user/syscall-defs.h     |  231 +++
>  linux-user/syscall.h          |   93 ++
>  linux-user/strace.c           |  567 ++++----
>  linux-user/syscall-file.inc.c |  638 +++++++++
>  linux-user/syscall-ipc.inc.c  | 1086 ++++++++++++++
>  linux-user/syscall-mem.inc.c  |  154 ++
>  linux-user/syscall-proc.inc.c |  861 ++++++++++++
>  linux-user/syscall.c          | 2500 ++-------------------------------
>  linux-user/strace.list        |  243 ----
>  9 files changed, 3499 insertions(+), 2874 deletions(-)
>  create mode 100644 linux-user/syscall-defs.h
>  create mode 100644 linux-user/syscall.h
>  create mode 100644 linux-user/syscall-file.inc.c
>  create mode 100644 linux-user/syscall-ipc.inc.c
>  create mode 100644 linux-user/syscall-mem.inc.c
>  create mode 100644 linux-user/syscall-proc.inc.c
>