Hi Ben, could you please submit this as a proper patch to the qemu-devel mailing list, with Signed-off-by line? (see https://wiki.qemu.org/Contribute/SubmitAPatch for details)
Thanks, Thomas On 2019-01-22 06:42, Michael Tokarev wrote: > Forwarding to qemu-devel@. > http://bugs.debian.org/920032 > > Thanks! > > 21.01.2019 22:09, Ben Hutchings wrote: >> Package: qemu-user >> Version: 1:3.1+dfsg-2 >> Severity: important >> Tags: patch >> >> On sparc (only) Linux defines timeval::tv_usec with type int, not >> long. However qemu-user's definition of struct target_timeval uses >> abi_long unconditionally. This results in the syscall translation >> layer effectively multiplying tv_usec by 2**32. All sparc syscalls >> passing non-zero values for this field fail with -EINVAL. The >> following patch seems to fix this. >> >> Ben. >> >> --- a/linux-user/syscall_defs.h >> +++ b/linux-user/syscall_defs.h >> @@ -210,7 +210,11 @@ struct target_linger { >> struct target_timeval { >> abi_long tv_sec; >> +#if defined (TARGET_SPARC) >> + abi_int tv_usec; >> +#else >> abi_long tv_usec; >> +#endif >> }; >> struct target_timespec { >> --- END --- >> >> -- System Information: >> Debian Release: buster/sid >> APT prefers unstable-debug >> APT policy: (500, 'unstable-debug'), (500, 'stable-updates'), (500, >> 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') >> Architecture: amd64 (x86_64) >> Foreign Architectures: i386 >> >> Kernel: Linux 4.19.0-1-amd64 (SMP w/4 CPU cores) >> Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), >> LANGUAGE=en_GB.UTF-8 (charmap=UTF-8) >> Shell: /bin/sh linked to /bin/dash >> Init: systemd (via /run/systemd/system) >> LSM: AppArmor: enabled >> >> Versions of packages qemu-user depends on: >> ii libc6 2.28-3 >> ii libcapstone3 3.0.5-3 >> ii libgcc1 1:8.2.0-13 >> ii libglib2.0-0 2.58.1-2 >> ii libstdc++6 8.2.0-13 >> ii zlib1g 1:1.2.11.dfsg-1 >> >> Versions of packages qemu-user recommends: >> ii qemu-user-static [qemu-user-binfmt] 1:3.1+dfsg-2 >> >> Versions of packages qemu-user suggests: >> ii sudo 1.8.26-2 >> >> -- no debconf information >> >