[PULL 00/14] tcg + linux-user patch queue

Richard Henderson posted 14 patches 1 week ago
There is a newer version of this series
linux-user/qemu.h                          |   1 -
accel/tcg/user-exec.c                      |   2 +-
cpu-common.c                               |   3 ++
linux-user/elfload.c                       |  71 ++++++++++++++++++++++-------
linux-user/syscall.c                       |  20 ++++++--
target/i386/tcg/sysemu/excp_helper.c       |   5 ++
tcg/tcg-op-gvec.c                          |  15 +++++-
tests/tcg/multiarch/sigreturn-sigmask.c    |  51 +++++++++++++++++++++
linux-user/aarch64/Makefile.vdso           |   5 +-
linux-user/aarch64/vdso-be.so              | Bin 3224 -> 3224 bytes
linux-user/aarch64/vdso-le.so              | Bin 3224 -> 3224 bytes
linux-user/arm/Makefile.vdso               |  11 +++--
linux-user/arm/meson.build                 |  13 ++++--
linux-user/arm/vdso-be32.so                | Bin 0 -> 2648 bytes
linux-user/arm/{vdso-be.so => vdso-be8.so} | Bin 2648 -> 2648 bytes
linux-user/arm/vdso-le.so                  | Bin 2648 -> 2648 bytes
linux-user/loongarch64/Makefile.vdso       |   3 +-
linux-user/loongarch64/vdso.so             | Bin 3560 -> 3560 bytes
linux-user/ppc/Makefile.vdso               |   6 ++-
linux-user/ppc/vdso-32.so                  | Bin 3020 -> 3020 bytes
linux-user/ppc/vdso-64.so                  | Bin 3896 -> 3896 bytes
linux-user/ppc/vdso-64le.so                | Bin 3896 -> 3896 bytes
tests/tcg/multiarch/Makefile.target        |   3 ++
23 files changed, 174 insertions(+), 35 deletions(-)
create mode 100644 tests/tcg/multiarch/sigreturn-sigmask.c
create mode 100755 linux-user/arm/vdso-be32.so
rename linux-user/arm/{vdso-be.so => vdso-be8.so} (90%)
[PULL 00/14] tcg + linux-user patch queue
Posted by Richard Henderson 1 week ago
The following changes since commit f0a5a31c33a8109061c2493e475c8a2f4d022432:

  Update version for v9.2.0-rc0 release (2024-11-13 21:44:45 +0000)

are available in the Git repository at:

  https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20241115

for you to fetch changes up to a020e0a807a6e34890d1f2ca02e49f814fd0b64f:

  tcg: Allow top bit of SIMD_DATA_BITS to be set in simd_desc() (2024-11-15 12:51:27 -0800)

----------------------------------------------------------------
cpu: ensure we don't call start_exclusive from cpu_exec
tcg: Allow top bit of SIMD_DATA_BITS to be set in simd_desc()
accel/tcg: Fix user-only probe_access_internal plugin check
linux-user: Fix setreuid and setregid to use direct syscalls
linux-user: Tolerate CONFIG_LSM_MMAP_MIN_ADDR
linux-user: Honor elf alignment when placing images
linux-user/*: Reduce vdso alignment to 4k
linux-user/arm: Select vdso for be8 and be32 modes

----------------------------------------------------------------
Helge Deller (1):
      linux-user: Fix setreuid and setregid to use direct syscalls

Ilya Leoshkevich (2):
      linux-user: Tolerate CONFIG_LSM_MMAP_MIN_ADDR
      tests/tcg: Test that sigreturn() does not corrupt the signal mask

Peter Maydell (1):
      tcg: Allow top bit of SIMD_DATA_BITS to be set in simd_desc()

Pierrick Bouvier (2):
      target/i386: fix hang when using slow path for ptw_setl
      cpu: ensure we don't call start_exclusive from cpu_exec

Richard Henderson (8):
      accel/tcg: Fix user-only probe_access_internal plugin check
      linux-user: Honor elf alignment when placing images
      linux-user: Drop image_info.alignment
      linux-user/aarch64: Reduce vdso alignment to 4k
      linux-user/arm: Reduce vdso alignment to 4k
      linux-user/loongarch64: Reduce vdso alignment to 4k
      linux-user/ppc: Reduce vdso alignment to 4k
      linux-user/arm: Select vdso for be8 and be32 modes

 linux-user/qemu.h                          |   1 -
 accel/tcg/user-exec.c                      |   2 +-
 cpu-common.c                               |   3 ++
 linux-user/elfload.c                       |  71 ++++++++++++++++++++++-------
 linux-user/syscall.c                       |  20 ++++++--
 target/i386/tcg/sysemu/excp_helper.c       |   5 ++
 tcg/tcg-op-gvec.c                          |  15 +++++-
 tests/tcg/multiarch/sigreturn-sigmask.c    |  51 +++++++++++++++++++++
 linux-user/aarch64/Makefile.vdso           |   5 +-
 linux-user/aarch64/vdso-be.so              | Bin 3224 -> 3224 bytes
 linux-user/aarch64/vdso-le.so              | Bin 3224 -> 3224 bytes
 linux-user/arm/Makefile.vdso               |  11 +++--
 linux-user/arm/meson.build                 |  13 ++++--
 linux-user/arm/vdso-be32.so                | Bin 0 -> 2648 bytes
 linux-user/arm/{vdso-be.so => vdso-be8.so} | Bin 2648 -> 2648 bytes
 linux-user/arm/vdso-le.so                  | Bin 2648 -> 2648 bytes
 linux-user/loongarch64/Makefile.vdso       |   3 +-
 linux-user/loongarch64/vdso.so             | Bin 3560 -> 3560 bytes
 linux-user/ppc/Makefile.vdso               |   6 ++-
 linux-user/ppc/vdso-32.so                  | Bin 3020 -> 3020 bytes
 linux-user/ppc/vdso-64.so                  | Bin 3896 -> 3896 bytes
 linux-user/ppc/vdso-64le.so                | Bin 3896 -> 3896 bytes
 tests/tcg/multiarch/Makefile.target        |   3 ++
 23 files changed, 174 insertions(+), 35 deletions(-)
 create mode 100644 tests/tcg/multiarch/sigreturn-sigmask.c
 create mode 100755 linux-user/arm/vdso-be32.so
 rename linux-user/arm/{vdso-be.so => vdso-be8.so} (90%)
Re: [PULL 00/14] tcg + linux-user patch queue
Posted by Peter Maydell 1 week ago
On Fri, 15 Nov 2024 at 20:59, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> The following changes since commit f0a5a31c33a8109061c2493e475c8a2f4d022432:
>
>   Update version for v9.2.0-rc0 release (2024-11-13 21:44:45 +0000)
>
> are available in the Git repository at:
>
>   https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20241115
>
> for you to fetch changes up to a020e0a807a6e34890d1f2ca02e49f814fd0b64f:
>
>   tcg: Allow top bit of SIMD_DATA_BITS to be set in simd_desc() (2024-11-15 12:51:27 -0800)
>
> ----------------------------------------------------------------
> cpu: ensure we don't call start_exclusive from cpu_exec
> tcg: Allow top bit of SIMD_DATA_BITS to be set in simd_desc()
> accel/tcg: Fix user-only probe_access_internal plugin check
> linux-user: Fix setreuid and setregid to use direct syscalls
> linux-user: Tolerate CONFIG_LSM_MMAP_MIN_ADDR
> linux-user: Honor elf alignment when placing images
> linux-user/*: Reduce vdso alignment to 4k
> linux-user/arm: Select vdso for be8 and be32 modes

This asserts on the user-mode tcg tests:

https://gitlab.com/qemu-project/qemu/-/jobs/8388145379
https://gitlab.com/qemu-project/qemu/-/jobs/8388145391

TEST catch-syscalls-with-libinline.so on aarch64
**
ERROR:../target/arm/tcg/sve_helper.c:6321:sve_stN_r: code should not be reached
timeout: the monitored command dumped core
Aborted
make[1]: *** [Makefile:185:
run-plugin-catch-syscalls-with-libinline.so] Error 134

Does this need "target/arm: Drop user-only special case in sve_stN_r"
now? (I'd picked that up into target-arm.next but feel free to slot it
in here if something in this series depends on it.)

thanks
-- PMM
Re: [PULL 00/14] tcg + linux-user patch queue
Posted by Richard Henderson 6 days, 22 hours ago
On 11/16/24 02:39, Peter Maydell wrote:
>> cpu: ensure we don't call start_exclusive from cpu_exec
>> tcg: Allow top bit of SIMD_DATA_BITS to be set in simd_desc()
>> accel/tcg: Fix user-only probe_access_internal plugin check
>> linux-user: Fix setreuid and setregid to use direct syscalls
>> linux-user: Tolerate CONFIG_LSM_MMAP_MIN_ADDR
>> linux-user: Honor elf alignment when placing images
>> linux-user/*: Reduce vdso alignment to 4k
>> linux-user/arm: Select vdso for be8 and be32 modes
> 
> This asserts on the user-mode tcg tests:
> 
> https://gitlab.com/qemu-project/qemu/-/jobs/8388145379
> https://gitlab.com/qemu-project/qemu/-/jobs/8388145391
> 
> TEST catch-syscalls-with-libinline.so on aarch64
> **
> ERROR:../target/arm/tcg/sve_helper.c:6321:sve_stN_r: code should not be reached
> timeout: the monitored command dumped core
> Aborted
> make[1]: *** [Makefile:185:
> run-plugin-catch-syscalls-with-libinline.so] Error 134
> 
> Does this need "target/arm: Drop user-only special case in sve_stN_r"
> now? (I'd picked that up into target-arm.next but feel free to slot it
> in here if something in this series depends on it.)
Yes it does.  I should have double-checked that was merged, not just queued.

I'll re-spin with that sorted before "Fix user-only probe_access_internal plugin check", 
which is of course what exposes the target/arm issue.


r~