[PATCH 00/14] linux-user/sparc: Handle missing traps

Richard Henderson posted 14 patches 1 year, 4 months ago
There is a newer version of this series
linux-user/sparc/target_signal.h |   2 +-
linux-user/syscall_defs.h        |   5 +
target/sparc/cpu.h               |   3 +-
linux-user/sparc/cpu_loop.c      | 170 +++++++++++++++++++++++++------
linux-user/sparc/signal.c        |  36 +++----
5 files changed, 167 insertions(+), 49 deletions(-)
[PATCH 00/14] linux-user/sparc: Handle missing traps
Posted by Richard Henderson 1 year, 4 months ago
Lots of missing trap code for cpu_loop().

r~

Richard Henderson (14):
  linux-user/sparc: Raise SIGILL for all unhandled software traps
  linux-user/sparc: Tidy syscall trap
  linux-user/sparc: Use TT_TRAP for flush windows
  linux-user/sparc: Tidy window spill/fill traps
  linux-user/sparc: Fix sparc64_{get,set}_context traps
  linux-user/sparc: Handle software breakpoint trap
  linux-user/sparc: Handle division by zero traps
  linux-user/sparc: Handle getcc, setcc, getpsr traps
  linux-user/sparc: Handle priviledged opcode trap
  linux-user/sparc: Handle privilidged action trap
  linux-user/sparc: Handle coprocessor disabled trap
  linux-user/sparc: Handle unimplemented flush trap
  linux-user/sparc: Handle floating-point exceptions
  linux-user/sparc: Handle tag overflow traps

 linux-user/sparc/target_signal.h |   2 +-
 linux-user/syscall_defs.h        |   5 +
 target/sparc/cpu.h               |   3 +-
 linux-user/sparc/cpu_loop.c      | 170 +++++++++++++++++++++++++------
 linux-user/sparc/signal.c        |  36 +++----
 5 files changed, 167 insertions(+), 49 deletions(-)

-- 
2.34.1
Re: [PATCH 00/14] linux-user/sparc: Handle missing traps
Posted by Mark Cave-Ayland 1 year, 4 months ago
On 02/02/2023 00:51, Richard Henderson wrote:

> Lots of missing trap code for cpu_loop().
> 
> r~
> 
> Richard Henderson (14):
>    linux-user/sparc: Raise SIGILL for all unhandled software traps
>    linux-user/sparc: Tidy syscall trap
>    linux-user/sparc: Use TT_TRAP for flush windows
>    linux-user/sparc: Tidy window spill/fill traps
>    linux-user/sparc: Fix sparc64_{get,set}_context traps
>    linux-user/sparc: Handle software breakpoint trap
>    linux-user/sparc: Handle division by zero traps
>    linux-user/sparc: Handle getcc, setcc, getpsr traps
>    linux-user/sparc: Handle priviledged opcode trap
>    linux-user/sparc: Handle privilidged action trap

Minor spelling nit: s/priviledged/privileged/

>    linux-user/sparc: Handle coprocessor disabled trap
>    linux-user/sparc: Handle unimplemented flush trap
>    linux-user/sparc: Handle floating-point exceptions
>    linux-user/sparc: Handle tag overflow traps
> 
>   linux-user/sparc/target_signal.h |   2 +-
>   linux-user/syscall_defs.h        |   5 +
>   target/sparc/cpu.h               |   3 +-
>   linux-user/sparc/cpu_loop.c      | 170 +++++++++++++++++++++++++------
>   linux-user/sparc/signal.c        |  36 +++----
>   5 files changed, 167 insertions(+), 49 deletions(-)

Alas I'm not overly familiar with the Linux syscall implementation on SPARC (all I 
can really do is run a chroot debian ports install for testing), however if all your 
local tests pass then I'm happy for this to go via the tcg or linux-user trees.


ATB,

Mark.