qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 24894f: linux-user: fix recvmsg emulation


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 24894f: linux-user: fix recvmsg emulation
Date: Fri, 08 Mar 2019 02:25:53 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 24894f39c677a3fd28d0868010a0d50639d49095
      
https://github.com/qemu/qemu/commit/24894f39c677a3fd28d0868010a0d50639d49095
  Author: Andreas Schwab <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: fix recvmsg emulation

Set msg_flags in the returned struct msghdr.

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


  Commit: 13ec4ec3e11c80bed9409c7046574d739d277ae3
      
https://github.com/qemu/qemu/commit/13ec4ec3e11c80bed9409c7046574d739d277ae3
  Author: Richard Henderson <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user: Add ELF_PLATFORM for arm

The 32-bit kernel has strings for v4, v5, v6, v7, v7m.
The 64-bit kernel, in compat mode, has strings for v8.

Fixes: https://bugs.launchpad.net/bugs/1813034
Signed-off-by: Richard Henderson <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>


  Commit: e20e3ec928ebdcad051ed3ac71ccf46a5aacc59b
      
https://github.com/qemu/qemu/commit/e20e3ec928ebdcad051ed3ac71ccf46a5aacc59b
  Author: Richard Henderson <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user: Fix ELF_PLATFORM for aarch64_be-linux-user

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


  Commit: cd8133679f7e0e2c292f631f1c78b2452d2435c7
      
https://github.com/qemu/qemu/commit/cd8133679f7e0e2c292f631f1c78b2452d2435c7
  Author: Andreas Schwab <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: fix emulation of accept4/getpeername/getsockname/recvfrom syscalls

System calls that return a socket address do so by writing the (possibly
truncated) address into the provided buffer space, but setting the
addrlen parameter to the actual size of the address.  To determine how
much to copy back to the target memory the emulation needs to remember
the incoming value of the addrlen parameter, so that it doesn't write
past the buffer limits.

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


  Commit: 14c8a3a157b437e54fbe097d991dca86ac828a14
      
https://github.com/qemu/qemu/commit/14c8a3a157b437e54fbe097d991dca86ac828a14
  Author: Sandra Loosemore <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/nios2/cpu_loop.c

  Log Message:
  -----------
  Fix breakpoint support in Nios II user-mode emulation.

Nios II user-mode emulation was missing handling for EXCP_DEBUG,
making the gdb stub essentially useless.  This patch adds the missing
piece.  The new code was copied from the existing EXCP_TRAP handling
and is also similar to what other targets (e.g., arm) do with EXCP_DEBUG.

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


  Commit: ba584f1de30e58b0d93cd81bd437271b894eefbf
      
https://github.com/qemu/qemu/commit/ba584f1de30e58b0d93cd81bd437271b894eefbf
  Author: Andreas Schwab <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: don't short-circuit read with zero length

A zero-length read still needs to do the usual checks, thus it may return
errors like EBADF.  This makes the read syscall emulation consistent with
the pread64 syscall emulation.

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


  Commit: b78c522ab949582b5e580e15d6ebf979845ccc94
      
https://github.com/qemu/qemu/commit/b78c522ab949582b5e580e15d6ebf979845ccc94
  Author: Marc-André Lureau <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: fix "may be used uninitialized" warnings

Fixes:

/home/elmarco/src/qemu/linux-user/syscall.c: In function ‘do_ioctl_rt’:
/home/elmarco/src/qemu/linux-user/syscall.c:4773:9: error: ‘host_rt_dev_ptr’ 
may be used uninitialized in this function [-Werror=maybe-uninitialized]
     if (*host_rt_dev_ptr != 0) {
         ^~~~~~~~~~~~~~~~
/home/elmarco/src/qemu/linux-user/syscall.c:4774:9: error: ‘target_rt_dev_ptr’ 
may be used uninitialized in this function [-Werror=maybe-uninitialized]
         unlock_user((void *)*host_rt_dev_ptr,
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                     *target_rt_dev_ptr, 0);
                     ~~~~~~~~~~~~~~~~~~~~~~

Based on previous discussion from patch "linux-users/syscall: make
do_ioctl_rt safer" by Alex Bennée.

Signed-off-by: Marc-André Lureau <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Laurent Vivier <address@hidden>


  Commit: 1b7695fe5f4efa5901c560c8f90ee5f3429ee843
      
https://github.com/qemu/qemu/commit/1b7695fe5f4efa5901c560c8f90ee5f3429ee843
  Author: Helge Deller <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/strace.c
    M linux-user/strace.list

  Log Message:
  -----------
  linux-user: Nicer strace output of chroot() syscall

Signed-off-by: Helge Deller <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>

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


  Commit: 61b463fbf6cbf21fcd9abb5af765a19b88dbc1ba
      
https://github.com/qemu/qemu/commit/61b463fbf6cbf21fcd9abb5af765a19b88dbc1ba
  Author: Laurent Vivier <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/fd-trans.c

  Log Message:
  -----------
  linux-user: add new netlink types

Add QEMU_IFLA_BR_VLAN_STATS_PER_PORT (from linux v4.20),
    QEMU_IFLA_BR_MULTI_BOOLOPT (from linux v5.0).

The first new entry fixes the following error:

  Unknown QEMU_IFLA_BR type 45

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


  Commit: c4e0780ed1ffd056f205348d387a61b4136a45df
      
https://github.com/qemu/qemu/commit/c4e0780ed1ffd056f205348d387a61b4136a45df
  Author: Peter Maydell <address@hidden>
  Date:   2019-03-07 (Thu, 07 Mar 2019)

  Changed paths:
    M linux-user/elfload.c
    M linux-user/fd-trans.c
    M linux-user/nios2/cpu_loop.c
    M linux-user/strace.c
    M linux-user/strace.list
    M linux-user/syscall.c

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

- Update netlink types to linux v5.0
- fix accept4/getpeername/getsockname/recvfrom/recvmsg/read
- add/fix ELF_PLATFORM ofr aarch64 and arm
- fix "may be used uninitialized" warnings
- Fix breakpoint support in Nios
- Nicer strace output of chroot() syscall

# gpg: Signature made Thu 07 Mar 2019 10:06:16 GMT
# gpg:                using RSA key F30C38BD3F2FBE3C
# gpg: Good signature from "Laurent Vivier <address@hidden>" [full]
# gpg:                 aka "Laurent Vivier <address@hidden>" [full]
# gpg:                 aka "Laurent Vivier (Red Hat) <address@hidden>" [full]
# Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F  5173 F30C 38BD 3F2F BE3C

* remotes/vivier2/tags/linux-user-for-4.0-pull-request:
  linux-user: add new netlink types
  linux-user: Nicer strace output of chroot() syscall
  linux-user: fix "may be used uninitialized" warnings
  linux-user: don't short-circuit read with zero length
  Fix breakpoint support in Nios II user-mode emulation.
  linux-user: fix emulation of accept4/getpeername/getsockname/recvfrom syscalls
  linux-user: Fix ELF_PLATFORM for aarch64_be-linux-user
  linux-user: Add ELF_PLATFORM for arm
  linux-user: fix recvmsg emulation

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


Compare: https://github.com/qemu/qemu/compare/6cb4f6db4f43...c4e0780ed1ff



reply via email to

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