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];
 	}
 

Reply via email to