[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v16 0/9] Add LoongArch linux-user emulation support
From: |
Song Gao |
Subject: |
[PATCH v16 0/9] Add LoongArch linux-user emulation support |
Date: |
Tue, 14 Jun 2022 17:05:27 +0800 |
Hi All,
This series add support linux-user emulation.
As the LoongArch kernel had merged into 5.19-rc1,
you can see the latest kernel at https://kernel.org
Need review patches:
0002-linux-user-Add-LoongArch-signal-support.patch
0007-target-loongarch-Adjust-functions-and-structure-to-s.patch
0009-target-loongarch-Update-README.patch
V16:
- Update signal.c;
- Update helper_rdtime_d();
- Update scripts/gensyscalls.sh, fixed a warning.
v15:
- Rebase;
- Update README;
- Adjust some functions and structure to support user-mode;
- Update syscall;
- Update target_sigcontext;
Old series:
- 20220609024209.2406188-1-gaosong@loongson.cn/">https://patchew.org/QEMU/20220609024209.2406188-1-gaosong@loongson.cn/
Test:
- user-mode:
make check && make check-tcg && run LoongArch bash
- system-mode
make check && make check-tcg
Thanks.
Song Gao
Song Gao (9):
linux-user: Add LoongArch generic header files
linux-user: Add LoongArch signal support
linux-user: Add LoongArch elf support
linux-user: Add LoongArch syscall support
linux-user: Add LoongArch cpu_loop support
scripts: add loongarch64 binfmt config
target/loongarch: Adjust functions and structure to support user-mode
default-configs: Add loongarch linux-user support
target/loongarch: Update README
configs/targets/loongarch64-linux-user.mak | 3 +
linux-user/elfload.c | 54 +++
linux-user/loongarch64/cpu_loop.c | 96 ++++++
linux-user/loongarch64/signal.c | 283 ++++++++++++++++
linux-user/loongarch64/sockbits.h | 11 +
linux-user/loongarch64/syscall_nr.h | 312 ++++++++++++++++++
linux-user/loongarch64/target_cpu.h | 34 ++
linux-user/loongarch64/target_elf.h | 12 +
linux-user/loongarch64/target_errno_defs.h | 12 +
linux-user/loongarch64/target_fcntl.h | 11 +
linux-user/loongarch64/target_prctl.h | 1 +
linux-user/loongarch64/target_resource.h | 11 +
linux-user/loongarch64/target_signal.h | 13 +
linux-user/loongarch64/target_structs.h | 11 +
linux-user/loongarch64/target_syscall.h | 48 +++
linux-user/loongarch64/termbits.h | 11 +
linux-user/syscall_defs.h | 10 +-
scripts/gensyscalls.sh | 2 +
scripts/qemu-binfmt-conf.sh | 6 +-
target/loongarch/README | 39 ++-
target/loongarch/cpu.c | 35 +-
target/loongarch/cpu.h | 8 +-
target/loongarch/gdbstub.c | 2 +-
target/loongarch/helper.h | 2 +
.../insn_trans/trans_privileged.c.inc | 36 ++
target/loongarch/internals.h | 2 +
target/loongarch/op_helper.c | 11 +-
27 files changed, 1061 insertions(+), 15 deletions(-)
create mode 100644 configs/targets/loongarch64-linux-user.mak
create mode 100644 linux-user/loongarch64/cpu_loop.c
create mode 100644 linux-user/loongarch64/signal.c
create mode 100644 linux-user/loongarch64/sockbits.h
create mode 100644 linux-user/loongarch64/syscall_nr.h
create mode 100644 linux-user/loongarch64/target_cpu.h
create mode 100644 linux-user/loongarch64/target_elf.h
create mode 100644 linux-user/loongarch64/target_errno_defs.h
create mode 100644 linux-user/loongarch64/target_fcntl.h
create mode 100644 linux-user/loongarch64/target_prctl.h
create mode 100644 linux-user/loongarch64/target_resource.h
create mode 100644 linux-user/loongarch64/target_signal.h
create mode 100644 linux-user/loongarch64/target_structs.h
create mode 100644 linux-user/loongarch64/target_syscall.h
create mode 100644 linux-user/loongarch64/termbits.h
--
2.31.1