CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2022/01/01 11:52:37
Modified files:
sys/arch/arm64/arm64: cpuswitch.S cryptox.c exception.S
machdep.c process_machdep.c syscall.c
trap.c vm_machdep.c
sys/arch/arm64/conf: files.arm64
sys/arch/arm64/dev: efi.c
sys/arch/arm64/include: armreg.h cpu.h pcb.h
Added files:
sys/arch/arm64/arm64: fpu.c
sys/arch/arm64/include: fpu.h
Removed files:
sys/arch/arm64/arm64: vfp.c
sys/arch/arm64/include: vfp.h
Log message:
Rewrite the kernel FPU handling code. The new code saves the FPU state
in cpu_switch() instead of at the kernel edge and gets rid of the FPU
state tracking in struct cpu_info and struct pcb. This fixes the random
crashes seen with SMP kernels on Apple M1.
ok patrick@