Module Name: src Committed By: riastradh Date: Sun Oct 15 16:11:22 UTC 2023
Modified Files: src/sys/arch/x86/x86: identcpu.c Log Message: x86: Disable savefpu size check for now. This is apparently so broken that the error check for what should have been a safe size fails, which is breaking boot on x86 all the way back to Sandy Bridge at this point. Grrr. We need to expand savefpu so that it supports the maximum size instead. To generate a diff of this commit: cvs rdiff -u -r1.124 -r1.125 src/sys/arch/x86/x86/identcpu.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/x86/x86/identcpu.c diff -u src/sys/arch/x86/x86/identcpu.c:1.124 src/sys/arch/x86/x86/identcpu.c:1.125 --- src/sys/arch/x86/x86/identcpu.c:1.124 Sun Oct 15 13:13:22 2023 +++ src/sys/arch/x86/x86/identcpu.c Sun Oct 15 16:11:22 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: identcpu.c,v 1.124 2023/10/15 13:13:22 riastradh Exp $ */ +/* $NetBSD: identcpu.c,v 1.125 2023/10/15 16:11:22 riastradh Exp $ */ /*- * Copyright (c) 1999, 2000, 2001, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: identcpu.c,v 1.124 2023/10/15 13:13:22 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: identcpu.c,v 1.125 2023/10/15 16:11:22 riastradh Exp $"); #include "opt_xen.h" @@ -770,10 +770,12 @@ cpu_probe_fpu(struct cpu_info *ci) /* Get features and maximum size of the save area */ x86_cpuid(0xd, descs); if (descs[2] > sizeof(struct fxsave)) { +#if 0 /* XXX breaks boot because of pcb abuse */ if (descs[2] > sizeof(union savefpu)) { panic("CPU's FPU save size too large: %u > %zu", descs[2], sizeof(union savefpu)); } +#endif x86_fpu_save_size = descs[2]; }