CVSROOT: /cvs Module name: src Changes by: kette...@cvs.openbsd.org 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@