[PULL 0/7] tcg patch queue

Richard Henderson posted 7 patches 1 year, 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230220032338.5619-1-richard.henderson@linaro.org
Maintainers: Richard Henderson <richard.henderson@linaro.org>, Paolo Bonzini <pbonzini@redhat.com>, Laurent Vivier <laurent@vivier.eu>, "Alex Bennée" <alex.bennee@linaro.org>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Yanan Wang <wangyanan55@huawei.com>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
There is a newer version of this series
configs/targets/microblaze-linux-user.mak   |  1 +
configs/targets/microblaze-softmmu.mak      |  1 +
configs/targets/microblazeel-linux-user.mak |  1 +
configs/targets/microblazeel-softmmu.mak    |  1 +
include/hw/core/cpu.h                       |  4 +-
target/microblaze/cpu.h                     |  2 +
accel/tcg/translator.c                      | 12 +++++-
cpus-common.c                               | 12 +++++-
linux-user/main.c                           | 10 +++--
linux-user/microblaze/cpu_loop.c            | 10 ++++-
linux-user/sparc/cpu_loop.c                 |  8 ++++
linux-user/syscall.c                        |  1 +
target/microblaze/cpu.c                     |  7 ++-
target/microblaze/gdbstub.c                 | 51 ++++++++++++++++------
tests/tcg/multiarch/linux/linux-fork-trap.c | 51 ++++++++++++++++++++++
gdb-xml/microblaze-core.xml                 | 67 +++++++++++++++++++++++++++++
gdb-xml/microblaze-stack-protect.xml        | 12 ++++++
17 files changed, 224 insertions(+), 27 deletions(-)
create mode 100644 tests/tcg/multiarch/linux/linux-fork-trap.c
create mode 100644 gdb-xml/microblaze-core.xml
create mode 100644 gdb-xml/microblaze-stack-protect.xml
[PULL 0/7] tcg patch queue
Posted by Richard Henderson 1 year, 2 months ago
The linux-user patches are on the tcg-ish side of user-only
emulation, rather than the syscall-ish side, so queuing here.
Solving the deadlock issue is quite important vs timeouts.


r~


The following changes since commit 6dffbe36af79e26a4d23f94a9a1c1201de99c261:

  Merge tag 'migration-20230215-pull-request' of https://gitlab.com/juan.quintela/qemu into staging (2023-02-16 13:09:51 +0000)

are available in the Git repository at:

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

for you to fetch changes up to 2f5b4792c0220920831ac84f94c3435b14791857:

  target/microblaze: Add gdbstub xml (2023-02-19 16:12:26 -1000)

----------------------------------------------------------------
tcg: Allow first half of insn in ram, and second half in mmio
linux-user/sparc: SIGILL for unknown trap vectors
linux-user/microblaze: SIGILL for privileged insns
linux-user: Fix deadlock while exiting due to signal
target/microblaze: Add gdbstub xml

----------------------------------------------------------------
Ilya Leoshkevich (4):
      linux-user: Always exit from exclusive state in fork_end()
      cpus: Make {start,end}_exclusive() recursive
      linux-user/microblaze: Handle privileged exception
      tests/tcg/linux-test: Add linux-fork-trap test

Richard Henderson (3):
      accel/tcg: Allow the second page of an instruction to be MMIO
      linux-user/sparc: Raise SIGILL for all unhandled software traps
      target/microblaze: Add gdbstub xml

 configs/targets/microblaze-linux-user.mak   |  1 +
 configs/targets/microblaze-softmmu.mak      |  1 +
 configs/targets/microblazeel-linux-user.mak |  1 +
 configs/targets/microblazeel-softmmu.mak    |  1 +
 include/hw/core/cpu.h                       |  4 +-
 target/microblaze/cpu.h                     |  2 +
 accel/tcg/translator.c                      | 12 +++++-
 cpus-common.c                               | 12 +++++-
 linux-user/main.c                           | 10 +++--
 linux-user/microblaze/cpu_loop.c            | 10 ++++-
 linux-user/sparc/cpu_loop.c                 |  8 ++++
 linux-user/syscall.c                        |  1 +
 target/microblaze/cpu.c                     |  7 ++-
 target/microblaze/gdbstub.c                 | 51 ++++++++++++++++------
 tests/tcg/multiarch/linux/linux-fork-trap.c | 51 ++++++++++++++++++++++
 gdb-xml/microblaze-core.xml                 | 67 +++++++++++++++++++++++++++++
 gdb-xml/microblaze-stack-protect.xml        | 12 ++++++
 17 files changed, 224 insertions(+), 27 deletions(-)
 create mode 100644 tests/tcg/multiarch/linux/linux-fork-trap.c
 create mode 100644 gdb-xml/microblaze-core.xml
 create mode 100644 gdb-xml/microblaze-stack-protect.xml
Re: [PULL 0/7] tcg patch queue
Posted by Peter Maydell 1 year, 2 months ago
On Mon, 20 Feb 2023 at 03:23, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> The linux-user patches are on the tcg-ish side of user-only
> emulation, rather than the syscall-ish side, so queuing here.
> Solving the deadlock issue is quite important vs timeouts.

aarch64 host, aarch64 guest, segfault on bti-3 in tcg-tests:

https://gitlab.com/qemu-project/qemu/-/jobs/3806772144

TEST bti-3 on aarch64
Segmentation fault
make[1]: *** [Makefile:170: run-bti-3] Error 139

Might be a pre-existing intermittent :shrug:

-- PMM
Re: [PULL 0/7] tcg patch queue
Posted by Peter Maydell 1 year, 2 months ago
On Tue, 21 Feb 2023 at 14:04, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Mon, 20 Feb 2023 at 03:23, Richard Henderson
> <richard.henderson@linaro.org> wrote:
> >
> > The linux-user patches are on the tcg-ish side of user-only
> > emulation, rather than the syscall-ish side, so queuing here.
> > Solving the deadlock issue is quite important vs timeouts.
>
> aarch64 host, aarch64 guest, segfault on bti-3 in tcg-tests:
>
> https://gitlab.com/qemu-project/qemu/-/jobs/3806772144
>
> TEST bti-3 on aarch64
> Segmentation fault
> make[1]: *** [Makefile:170: run-bti-3] Error 139
>
> Might be a pre-existing intermittent :shrug:

It didn't happen on a rerun. But here's another one, clang-user build,
on the new test case:

https://gitlab.com/qemu-project/qemu/-/jobs/3806772115

TEST linux-fork-trap-with-libsyscall.so on s390x
qemu: uncaught target signal 4 (Illegal instruction) - core dumped

-- PMM
Re: [PULL 0/7] tcg patch queue
Posted by Peter Maydell 1 year, 2 months ago
On Tue, 21 Feb 2023 at 14:47, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Tue, 21 Feb 2023 at 14:04, Peter Maydell <peter.maydell@linaro.org> wrote:
> >
> > On Mon, 20 Feb 2023 at 03:23, Richard Henderson
> > <richard.henderson@linaro.org> wrote:
> > >
> > > The linux-user patches are on the tcg-ish side of user-only
> > > emulation, rather than the syscall-ish side, so queuing here.
> > > Solving the deadlock issue is quite important vs timeouts.
> >
> > aarch64 host, aarch64 guest, segfault on bti-3 in tcg-tests:
> >
> > https://gitlab.com/qemu-project/qemu/-/jobs/3806772144
> >
> > TEST bti-3 on aarch64
> > Segmentation fault
> > make[1]: *** [Makefile:170: run-bti-3] Error 139
> >
> > Might be a pre-existing intermittent :shrug:
>
> It didn't happen on a rerun. But here's another one, clang-user build,
> on the new test case:
>
> https://gitlab.com/qemu-project/qemu/-/jobs/3806772115
>
> TEST linux-fork-trap-with-libsyscall.so on s390x
> qemu: uncaught target signal 4 (Illegal instruction) - core dumped

This one fails consistently, so not an intermittent. Here's
the retry job:
https://gitlab.com/qemu-project/qemu/-/jobs/3807471447


-- PMM
Re: [PULL 0/7] tcg patch queue
Posted by Richard Henderson 1 year, 2 months ago
On 2/21/23 05:52, Peter Maydell wrote:
>> It didn't happen on a rerun. But here's another one, clang-user build,
>> on the new test case:
>>
>> https://gitlab.com/qemu-project/qemu/-/jobs/3806772115
>>
>> TEST linux-fork-trap-with-libsyscall.so on s390x
>> qemu: uncaught target signal 4 (Illegal instruction) - core dumped
> 
> This one fails consistently, so not an intermittent. Here's
> the retry job:
> https://gitlab.com/qemu-project/qemu/-/jobs/3807471447

Ah, the new linux-fork-trap test case is triggering a clang sanitizer abort within 
linux-user, i.e. exposing a latent bug:

https://gitlab.com/qemu-project/qemu/-/jobs/3807471447#L5064

I'll drop that one for a moment, and we can decide how to fix that later.


r~