mbox series

[v2,for-7.1,0/8] linux-user/nios2: Fix clone and sigreturn

Message ID 20220325195250.386071-1-richard.henderson@linaro.org
Headers show
Series linux-user/nios2: Fix clone and sigreturn | expand

Message

Richard Henderson March 25, 2022, 7:52 p.m. UTC
These two syscalls are the reason that the generic linux-user
tests were failing, which allows us to re-enable the tests.

Changes for v2:
  * Hoist the pc advance to apply to all EXCP_TRAP.
    Fixing this properly requires larger changes outside of linux-user;
    deferred until EIC patch set also committed.
  * Treat ret < 0 as error, per the kernel syscall path.
  * Return ESIGRETURN from badframe path.


r~


Richard Henderson (8):
  linux-user/nios2: Hoist pc advance to the top of EXCP_TRAP
  linux-user/nios2: Fix clone child return
  linux-user/nios2: Drop syscall 0 "workaround"
  linux-user/nios2: Adjust error return
  linux-user/nios2: Handle special qemu syscall return values
  linux-user/nios2: Remove do_sigreturn
  linux-user/nios2: Use QEMU_ESIGRETURN from do_rt_sigreturn
  tests/tcg/nios2: Re-enable linux-user tests

 linux-user/nios2/target_cpu.h   |  1 +
 linux-user/nios2/cpu_loop.c     | 27 ++++++++++++++++++++-------
 linux-user/nios2/signal.c       | 19 ++++---------------
 tests/tcg/nios2/Makefile.target | 11 -----------
 4 files changed, 25 insertions(+), 33 deletions(-)
 delete mode 100644 tests/tcg/nios2/Makefile.target