Commit 7623b5ba authored by Peter Maydell's avatar Peter Maydell
Browse files

Merge remote-tracking branch 'remotes/vivier2/tags/linux-user-for-5.1-pull-request' into staging



linux-user pull request 2020-07-02

Update linux-user maintainer
Improve strace output for some syscalls
Display contents of ioctl() parameters
Fix sparc64 flushw operation

# gpg: Signature made Sat 04 Jul 2020 17:25:21 BST
# gpg:                using RSA key CD2F75DDC8E3A4DC2E4F5173F30C38BD3F2FBE3C
# gpg:                issuer "laurent@vivier.eu"
# gpg: Good signature from "Laurent Vivier <lvivier@redhat.com>" [full]
# gpg:                 aka "Laurent Vivier <laurent@vivier.eu>" [full]
# gpg:                 aka "Laurent Vivier (Red Hat) <lvivier@redhat.com>" [full]
# Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F  5173 F30C 38BD 3F2F BE3C

* remotes/vivier2/tags/linux-user-for-5.1-pull-request:
  MAINTAINERS: update linux-user maintainer
  linux-user: Add strace support for printing arguments of ioctl()
  linux-user: Add thunk argument types for SIOCGSTAMP and SIOCGSTAMPNS
  linux-user: Add strace support for printing arguments of fallocate()
  linux-user: Add strace support for printing arguments of chown()/lchown()
  linux-user: Add strace support for printing arguments of lseek()
  linux-user: Add strace support for printing argument of syscalls used for extended attributes
  linux-user: Add strace support for a group of syscalls
  linux-user: Extend strace support to enable argument printing after syscall execution
  linux-user: syscall: ioctls: support DRM_IOCTL_VERSION
  linux-user/sparc64: Fix the handling of window spill trap
  target/sparc: Translate flushw opcode

Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parents eb6490f5 8f902c54
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -2630,8 +2630,7 @@ F: bsd-user/
F: default-configs/*-bsd-user.mak

Linux user
M: Riku Voipio <riku.voipio@iki.fi>
R: Laurent Vivier <laurent@vivier.eu>
M: Laurent Vivier <laurent@vivier.eu>
S: Maintained
F: linux-user/
F: default-configs/*-linux-user.mak
+5 −1
Original line number Diff line number Diff line
@@ -413,7 +413,11 @@ static void save_window(CPUSPARCState *env)
    save_window_offset(env, cpu_cwp_dec(env, env->cwp - 2));
    env->wim = new_wim;
#else
    save_window_offset(env, cpu_cwp_dec(env, env->cwp - 2));
    /*
     * cansave is zero if the spill trap handler is triggered by `save` and
     * nonzero if triggered by a `flushw`
     */
    save_window_offset(env, cpu_cwp_dec(env, env->cwp - env->cansave - 2));
    env->cansave++;
    env->canrestore--;
#endif
+10 −0
Original line number Diff line number Diff line
@@ -3194,6 +3194,13 @@ if ! check_include "ifaddrs.h" ; then
  have_ifaddrs_h=no
fi

#########################################
# libdrm check
have_drm_h=no
if check_include "libdrm/drm.h" ; then
    have_drm_h=yes
fi

##########################################
# VTE probe

@@ -7377,6 +7384,9 @@ fi
if test "$have_ifaddrs_h" = "yes" ; then
    echo "HAVE_IFADDRS_H=y" >> $config_host_mak
fi
if test "$have_drm_h" = "yes" ; then
  echo "HAVE_DRM_H=y" >> $config_host_mak
fi
if test "$have_broken_size_max" = "yes" ; then
    echo "HAVE_BROKEN_SIZE_MAX=y" >> $config_host_mak
fi
+1 −0
Original line number Diff line number Diff line
@@ -73,6 +73,7 @@ void thunk_register_struct_direct(int id, const char *name,
                                  const StructEntry *se1);
const argtype *thunk_convert(void *dst, const void *src,
                             const argtype *type_ptr, int to_host);
const argtype *thunk_print(void *arg, const argtype *type_ptr);

extern StructEntry *struct_entries;

+13 −4
Original line number Diff line number Diff line
@@ -279,13 +279,17 @@
   * FIXME: create a macro to define this kind of entry
   */
  { TARGET_SIOCGSTAMP_OLD, TARGET_SIOCGSTAMP_OLD,
    "SIOCGSTAMP_OLD", IOC_R, do_ioctl_SIOCGSTAMP },
    "SIOCGSTAMP_OLD", IOC_R, do_ioctl_SIOCGSTAMP,
    { MK_PTR(MK_STRUCT(STRUCT_timeval)) } },
  { TARGET_SIOCGSTAMPNS_OLD, TARGET_SIOCGSTAMPNS_OLD,
    "SIOCGSTAMPNS_OLD", IOC_R, do_ioctl_SIOCGSTAMPNS },
    "SIOCGSTAMPNS_OLD", IOC_R, do_ioctl_SIOCGSTAMPNS,
    { MK_PTR(MK_STRUCT(STRUCT_timespec)) } },
  { TARGET_SIOCGSTAMP_NEW, TARGET_SIOCGSTAMP_NEW,
    "SIOCGSTAMP_NEW", IOC_R, do_ioctl_SIOCGSTAMP },
    "SIOCGSTAMP_NEW", IOC_R, do_ioctl_SIOCGSTAMP,
    { MK_PTR(MK_STRUCT(STRUCT__kernel_sock_timeval)) } },
  { TARGET_SIOCGSTAMPNS_NEW, TARGET_SIOCGSTAMPNS_NEW,
    "SIOCGSTAMPNS_NEW", IOC_R, do_ioctl_SIOCGSTAMPNS },
    "SIOCGSTAMPNS_NEW", IOC_R, do_ioctl_SIOCGSTAMPNS,
    { MK_PTR(MK_STRUCT(STRUCT__kernel_timespec)) } },

  IOCTL(RNDGETENTCNT, IOC_R, MK_PTR(TYPE_INT))
  IOCTL(RNDADDTOENTCNT, IOC_W, MK_PTR(TYPE_INT))
@@ -574,6 +578,11 @@
  IOCTL_SPECIAL(SIOCDELRT, IOC_W, do_ioctl_rt,
                MK_PTR(MK_STRUCT(STRUCT_rtentry)))

#ifdef HAVE_DRM_H
  IOCTL_SPECIAL(DRM_IOCTL_VERSION, IOC_RW, do_ioctl_drm,
                MK_PTR(MK_STRUCT(STRUCT_drm_version)))
#endif

#ifdef TARGET_TIOCSTART
  IOCTL_IGNORE(TIOCSTART)
  IOCTL_IGNORE(TIOCSTOP)
Loading