qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 75578d: linux-user: Assert on bad type in thu


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 75578d: linux-user: Assert on bad type in thunk_type_align...
Date: Fri, 25 May 2018 02:54:12 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 75578d6fcedc55b85b44dfc83f506b74c32b7395
      
https://github.com/qemu/qemu/commit/75578d6fcedc55b85b44dfc83f506b74c32b7395
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-24 (Thu, 24 May 2018)

  Changed paths:
    M include/exec/user/thunk.h

  Log Message:
  -----------
  linux-user: Assert on bad type in thunk_type_align() and thunk_type_size()

In thunk_type_align() and thunk_type_size() we currently return
-1 if the value at the type_ptr isn't one of the TYPE_* values
we understand. However, this should never happen, and if it does
then the calling code will go confusingly wrong because none
of the callsites try to handle an error return. Switch to an
assertion instead, so that if this does somehow happen we'll have
a nice clear backtrace of what happened rather than a weird crash
or misbehaviour.

This also silences various Coverity complaints about not handling
the negative return value (CID 1005735, 1005736, 1005738, 1390582).

Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>


  Commit: c1e703f55814fe0fb95b6f0e5a1eff571455d08f
      
https://github.com/qemu/qemu/commit/c1e703f55814fe0fb95b6f0e5a1eff571455d08f
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: update netlink emulation

Update enums with entries from linux 4.17

Translate entries that generate logs with iproute2 4.9.0 and
host kernel 4.15:

  # ip address show
  Unknown host QEMU_IFLA type: 43
  Unknown host QEMU_IFLA type: 43
  Unknown host QEMU_IFLA type: 43
  Unknown QEMU_IFLA_BR type 41
  Unknown QEMU_IFLA_BR type 42
  Unknown QEMU_IFLA_BR type 43
  Unknown QEMU_IFLA_BR type 44
  Unknown host QEMU_IFLA type: 43
  Unknown QEMU_IFLA_BR type 41
  Unknown QEMU_IFLA_BR type 42
  Unknown QEMU_IFLA_BR type 43
  Unknown QEMU_IFLA_BR type 44
  Unknown host QEMU_IFLA type: 43

Signed-off-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>


  Commit: 2b5249b85cd9daaca3ea0a9ecab81c3e41cf9f55
      
https://github.com/qemu/qemu/commit/2b5249b85cd9daaca3ea0a9ecab81c3e41cf9f55
  Author: Igor Mammedov <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M bsd-user/main.c
    M linux-user/main.c

  Log Message:
  -----------
  linux-user: update comments to point to tcg_exec_init()

cpu_init() was replaced by cpu_create() since 2.12 but comments
weren't updated. So update stale comments to point that page
sizes arei actually initialized by tcg_exec_init(). Also move
another qemu_host_page_size related comment before tcg_exec_init()
where it belongs.

Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>


  Commit: 309786cfd8f701182eee845fd98e30fd5addd046
      
https://github.com/qemu/qemu/commit/309786cfd8f701182eee845fd98e30fd5addd046
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Fix payload size logic in host_to_target_cmsg()

Coverity points out that there's a missing break in the switch in
host_to_target_cmsg() where we update tgt_len for
cmsg_level/cmsg_type combinations which require a different length
for host and target (CID 1385425).  To avoid duplicating the default
case (target length same as host) in both switches, set that before
the switch so that only the cases which want to override it need any
code.

This fixes a bug where we would have used the wrong length
for SOL_SOCKET/SO_TIMESTAMP messages where the target and
host have differently sized 'struct timeval' (ie one is 32
bit and the other is 64 bit).

Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>


  Commit: 5de33b105d148446a9a7415707358cc8ca465cdf
      
https://github.com/qemu/qemu/commit/5de33b105d148446a9a7415707358cc8ca465cdf
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    A linux-user/mips/sockbits.h
    A linux-user/mips64/sockbits.h
    M linux-user/socket.h

  Log Message:
  -----------
  linux-user: move mips socket.h definitions to mips/sockbits.h

No code change.

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>


  Commit: f24cbd398e412bac3bde0ad4dfea984f7e67884d
      
https://github.com/qemu/qemu/commit/f24cbd398e412bac3bde0ad4dfea984f7e67884d
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    A linux-user/alpha/sockbits.h
    M linux-user/socket.h

  Log Message:
  -----------
  linux-user: move alpha socket.h definitions to alpha/sockbits.h

No code change.

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>


  Commit: da84fdaaf8c36e1f92e3780717bfd6df35199292
      
https://github.com/qemu/qemu/commit/da84fdaaf8c36e1f92e3780717bfd6df35199292
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/socket.h
    A linux-user/sparc/sockbits.h
    A linux-user/sparc64/sockbits.h

  Log Message:
  -----------
  linux-user: move sparc/sparc64 socket.h definitions to sparc/sockbits.h

No code change.

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>


  Commit: 500fa6076034729de8d4fd45b3d8a6f9d08d7585
      
https://github.com/qemu/qemu/commit/500fa6076034729de8d4fd45b3d8a6f9d08d7585
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    A linux-user/aarch64/sockbits.h
    A linux-user/arm/sockbits.h
    A linux-user/cris/sockbits.h
    A linux-user/generic/sockbits.h
    A linux-user/i386/sockbits.h
    A linux-user/m68k/sockbits.h
    A linux-user/microblaze/sockbits.h
    A linux-user/nios2/sockbits.h
    A linux-user/openrisc/sockbits.h
    A linux-user/ppc/sockbits.h
    A linux-user/riscv/sockbits.h
    A linux-user/s390x/sockbits.h
    A linux-user/sh4/sockbits.h
    M linux-user/socket.h
    A linux-user/tilegx/sockbits.h
    A linux-user/x86_64/sockbits.h
    A linux-user/xtensa/sockbits.h

  Log Message:
  -----------
  linux-user: move socket.h generic definitions to generic/sockbits.h

and include the file from architectures without specific definitions

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>


  Commit: 9e979d64e8f38f84a8bf2908fd3b4752ae4ef249
      
https://github.com/qemu/qemu/commit/9e979d64e8f38f84a8bf2908fd3b4752ae4ef249
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/generic/sockbits.h
    M linux-user/ppc/sockbits.h

  Log Message:
  -----------
  linux-user: move ppc socket.h definitions to ppc/sockbits.h

Change conditional #ifdef part by #undef of the symbols
redefined for PPC relative to generic/socket.h

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>


  Commit: 8f553bf77c0f915624b9e48fc2eacc4968494af0
      
https://github.com/qemu/qemu/commit/8f553bf77c0f915624b9e48fc2eacc4968494af0
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/alpha/sockbits.h
    M linux-user/hppa/sockbits.h
    M linux-user/mips/sockbits.h
    M linux-user/socket.h
    M linux-user/sparc/sockbits.h

  Log Message:
  -----------
  linux-user: update ARCH_HAS_SOCKET_TYPES use

to be like in the kernel and rename it TARGET_ARCH_HAS_SOCKET_TYPES

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>


  Commit: 30a1b125884f53bb33b7b7276ff63b1dd8682669
      
https://github.com/qemu/qemu/commit/30a1b125884f53bb33b7b7276ff63b1dd8682669
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/sparc/sockbits.h

  Log Message:
  -----------
  linux-user: copy sparc/sockbits.h definitions from linux

Values defined for sparc are not correct.
Copy the content of "arch/sparc/include/uapi/asm/socket.h"
to fix them.

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>


  Commit: b0a7413dd53cbb75227152374689c3bde39c89db
      
https://github.com/qemu/qemu/commit/b0a7413dd53cbb75227152374689c3bde39c89db
  Author: Laurent Vivier <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M linux-user/alpha/sockbits.h
    M linux-user/generic/sockbits.h
    M linux-user/mips/sockbits.h

  Log Message:
  -----------
  linux-user: define TARGET_SO_REUSEPORT

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>


  Commit: 4f71086665360eb15cb0cc3392bd5063f26ee934
      
https://github.com/qemu/qemu/commit/4f71086665360eb15cb0cc3392bd5063f26ee934
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M gdbstub.c
    M include/exec/gdbstub.h

  Log Message:
  -----------
  gdbstub: Clarify what gdb_handlesig() is doing

gdb_handlesig()'s behaviour is not entirely obvious at first
glance. Add a doc comment for it, and also add a comment
explaining why it's ok for gdb_do_syscallv() to ignore
gdb_handlesig()'s return value. (Coverity complains about
this: CID 1390850.)

Signed-off-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>


  Commit: 5a5c383b1373aeb6c87a0d6060f6c3dc7c53082b
      
https://github.com/qemu/qemu/commit/5a5c383b1373aeb6c87a0d6060f6c3dc7c53082b
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M bsd-user/main.c
    M gdbstub.c
    M include/exec/gdbstub.h
    M include/exec/user/thunk.h
    A linux-user/aarch64/sockbits.h
    A linux-user/alpha/sockbits.h
    A linux-user/arm/sockbits.h
    A linux-user/cris/sockbits.h
    A linux-user/generic/sockbits.h
    M linux-user/hppa/sockbits.h
    A linux-user/i386/sockbits.h
    A linux-user/m68k/sockbits.h
    M linux-user/main.c
    A linux-user/microblaze/sockbits.h
    A linux-user/mips/sockbits.h
    A linux-user/mips64/sockbits.h
    A linux-user/nios2/sockbits.h
    A linux-user/openrisc/sockbits.h
    A linux-user/ppc/sockbits.h
    A linux-user/riscv/sockbits.h
    A linux-user/s390x/sockbits.h
    A linux-user/sh4/sockbits.h
    M linux-user/socket.h
    A linux-user/sparc/sockbits.h
    A linux-user/sparc64/sockbits.h
    M linux-user/syscall.c
    A linux-user/tilegx/sockbits.h
    A linux-user/x86_64/sockbits.h
    A linux-user/xtensa/sockbits.h

  Log Message:
  -----------
  Merge remote-tracking branch 
'remotes/vivier2/tags/linux-user-for-2.13-pull-request' into staging

This pull request includes:
- fixes for some comments
- netlink update and fix
- rework/cleanup fo socket.h,
  including fixes for SPARC part.

# gpg: Signature made Fri 25 May 2018 09:16:21 BST
# gpg:                using RSA key F30C38BD3F2FBE3C
# gpg: Good signature from "Laurent Vivier <address@hidden>"
# gpg:                 aka "Laurent Vivier <address@hidden>"
# gpg:                 aka "Laurent Vivier (Red Hat) <address@hidden>"
# Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F  5173 F30C 38BD 3F2F BE3C

* remotes/vivier2/tags/linux-user-for-2.13-pull-request:
  gdbstub: Clarify what gdb_handlesig() is doing
  linux-user: define TARGET_SO_REUSEPORT
  linux-user: copy sparc/sockbits.h definitions from linux
  linux-user: update ARCH_HAS_SOCKET_TYPES use
  linux-user: move ppc socket.h definitions to ppc/sockbits.h
  linux-user: move socket.h generic definitions to generic/sockbits.h
  linux-user: move sparc/sparc64 socket.h definitions to sparc/sockbits.h
  linux-user: move alpha socket.h definitions to alpha/sockbits.h
  linux-user: move mips socket.h definitions to mips/sockbits.h
  linux-user: Fix payload size logic in host_to_target_cmsg()
  linux-user: update comments to point to tcg_exec_init()
  linux-user: update netlink emulation
  linux-user: Assert on bad type in thunk_type_align() and thunk_type_size()

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/62b9b076d9d3...5a5c383b1373
      **NOTE:** This service been marked for deprecation: 
https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]