399c8082ca
linux-user/loongarch64: Reduce vdso alignment to 4k
...
Reduce vdso alignment to minimum page size.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2024-11-16 08:42:25 -08:00
c52e405968
linux-user,loongarch: move to syscalltbl file
...
Since kernel v6.11 loongarch has moved from syscall_nr.h file
to syscall.tbl (26a3b85bac08 ("loongarch: convert to generic syscall
table"))
Update linux-user scripts to be able to retrieve syscall numbers
from linux syscall.tbl instead of syscall_nr.h.
New syscall.tbl is imported from linux v6.11 using updated
scripts/update-syscalltbl.sh
Remove scripts/gensyscalls.sh that is now useless.
Signed-off-by: Laurent Vivier <laurent@vivier.eu >
Message-ID: <20240920151034.859533-6-laurent@vivier.eu >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2024-09-22 09:30:18 +02:00
3f89ff9b60
linux-user: update syscall_nr.h to Linux v6.10
...
Automatically generated using scripts/gensyscalls.sh
Signed-off-by: Laurent Vivier <laurent@vivier.eu >
Reviewed-by: Brian Cain <bcain@quicinc.com >
Message-ID: <20240918074256.720617-2-laurent@vivier.eu >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2024-09-22 09:27:12 +02:00
4d6d8a05a0
linux-user: Move tswap_siginfo out of target code
...
Move tswap_siginfo from target code to handle_pending_signal. This will
allow some cleanups and having the siginfo ready to be used in gdbstub.
Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org >
Suggested-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20240309030901.1726211-3-gustavo.romero@linaro.org >
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
2024-03-13 11:43:52 +00:00
01a721167a
linux-user/loongarch64: Remove TARGET_FORCE_SHMLBA
...
The kernel abi was changed with
commit d23b77953f5a4fbf94c05157b186aac2a247ae32
Author: Huacai Chen <chenhuacai@kernel.org >
Date: Wed Jan 17 12:43:08 2024 +0800
LoongArch: Change SHMLBA from SZ_64K to PAGE_SIZE
during the v6.8 cycle.
Reviewed-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2024-02-29 14:24:30 -10:00
f707773753
linux-user/loongarch64: Add LASX sigcontext save/restore
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231101030816.2353416-7-gaosong@loongson.cn >
2023-11-03 14:13:46 +08:00
90ea967d14
linux-user/loongarch64: Add LSX sigcontext save/restore
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231101030816.2353416-6-gaosong@loongson.cn >
2023-11-03 14:13:40 +08:00
7c0ea81ce6
linux-user/loongarch64: Use abi_{ulong,uint} types
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231101030816.2353416-5-gaosong@loongson.cn >
2023-11-03 14:13:37 +08:00
01714edafd
linux-user/loongarch64: setup_sigframe() set 'end' context size 0
...
See:
https://github.com/torvalds/linux/blob/master/arch/loongarch/kernel/signal.c
The kernel setup_sigcontext() set end context size 0.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231101030816.2353416-4-gaosong@loongson.cn >
2023-11-03 14:13:26 +08:00
420756c2dd
linux-user/loongarch64: Fix setup_extcontext alloc wrong fpu_context size
...
See:
https://github.com/torvalds/linux/blob/master/arch/loongarch/kernel/signal.c
The alloc size is sizeof(struct target_fpu_context).
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231101030816.2353416-3-gaosong@loongson.cn >
2023-11-03 14:13:22 +08:00
91ffd93be6
linux-user/loongarch64: Use traps to track LSX/LASX usage
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20231101030816.2353416-2-gaosong@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
2023-11-03 14:13:18 +08:00
00cc2934b2
linux-user/loongarch64: Add vdso
...
Requires a relatively recent binutils version in order to avoid
spurious R_LARCH_NONE relocations. The presence of these relocs
are diagnosed by our gen-vdso tool.
Tested-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-10-30 13:41:55 -07:00
008a3b1662
target/loongarch: Add LASX data support
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20230914022645.1151356-12-gaosong@loongson.cn >
2023-09-20 11:43:11 +08:00
121c8dd69d
linux-user: Split out cpu/target_proc.h
...
Move the various open_cpuinfo functions into new files.
Move the m68k open_hardware function as well.
All other guest architectures get a boilerplate empty file.
Tested-by: Helge Deller <deller@gmx.de >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-09-01 13:33:09 -07:00
da2b71fab6
linux-user: Define ELF_ET_DYN_BASE in $guest/target_mman.h
...
Copy each guest kernel's default value, then bound it
against reserved_va or the host address space.
Tested-by: Helge Deller <deller@gmx.de >
Reviewed-by: Helge Deller <deller@gmx.de >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-08-08 13:27:15 -07:00
2d708164e0
linux-user: Define TASK_UNMAPPED_BASE in $guest/target_mman.h
...
Provide default values that are as close as possible to the
values used by the guest's kernel.
Tested-by: Helge Deller <deller@gmx.de >
Reviewed-by: Helge Deller <deller@gmx.de >
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-08-08 13:24:27 -07:00
16f5396cec
target/loongarch: Add LSX data type VReg
...
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Message-Id: <20230504122810.4094787-2-gaosong@loongson.cn >
2023-05-06 11:19:42 +08:00
9f22020b91
linux-user: Provide MADV_* definitions
...
Provide MADV_* definitions using target_mman.h header, similar to what
kernel does. Most architectures use the same values, with the exception
of alpha and hppa.
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220906000839.1672934-2-iii@linux.ibm.com >
Signed-off-by: Laurent Vivier <laurent@vivier.eu >
2022-09-27 09:30:09 +02:00
2f149c759f
target/loongarch: Update gdb_set_fpu() and gdb_get_fpu()
...
GDB LoongArch fpu use fcc register, update gdb_set_fpu()
and gdb_get_fpu() to match it.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Acked-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20220805033523.1416837-6-gaosong@loongson.cn >
2022-08-05 10:02:40 -07:00
da8c70ea82
linux-user: Add LoongArch cpu_loop support
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220624031049.1716097-6-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:57 +05:30
1f63019632
linux-user: Add LoongArch syscall support
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20220624031049.1716097-5-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:57 +05:30
3418fe25fa
linux-user: Add LoongArch elf support
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20220624031049.1716097-4-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:57 +05:30
9d5cd6587a
linux-user: Add LoongArch signal support
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Message-Id: <20220624031049.1716097-3-gaosong@loongson.cn >
[rth: Rework extctx frame allocation and locking;
Properly read/write fcc from signal frame.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:57 +05:30
070f735333
linux-user: Add LoongArch generic header files
...
This includes:
- sockbits.h
- target_errno_defs.h
- target_fcntl.h
- termbits.h
- target_resource.h
- target_structs.h
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Reviewed-by: WANG Xuerui <git@xen0n.name >
Message-Id: <20220624031049.1716097-2-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:57 +05:30