NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

PR/58650 CVS commit: [netbsd-10] src/sys/arch/x86/x86



The following reply was made to PR install/58650; it has been noted by GNATS.

From: "Martin Husemann" <martin%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/58650 CVS commit: [netbsd-10] src/sys/arch/x86/x86
Date: Thu, 15 May 2025 18:17:07 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Thu May 15 18:17:07 UTC 2025
 
 Modified Files:
 	src/sys/arch/x86/x86 [netbsd-10]: fpu.c
 
 Log Message:
 Pull up following revision(s) (requested by riastradh in ticket #1119):
 
 	sys/arch/x86/x86/fpu.c: revision 1.81
 	sys/arch/x86/x86/fpu.c: revision 1.90 (partial, via patch)
 
 x86: Fix fpu_kern_enter/leave for machines with big fpu state.
 
 fpu_kern_enter/leave are used for FPU/SIMD access from the kernel,
 for cgd(4) crypto and similar.  Currently, we use a statically
 allocated union savefpu object with particular content to put the
 FPU into a safe state or an all-zero state.
 
 This doesn't work (reliably, anyway) when the FPU state is larger
 than 576 bytes, e.g. with AVX-512 register state (another ~2 KiB)
 or Intel AMX TILECFG/TILEDATA (another ~10 KiB).  For machines
 with larger FPU state, this change dynamically allocates a larger
 area for the safe/zero FPU states.
 
 (This change doesn't add support for Intel AMX TILECFG/TILEDATA;
 it just avoids the failure mode.  The part of
 https://mail-index.netbsd.org/source-changes/2025/04/24/msg156552.html
 it applies is limited.)
 This may improve the situation for the following PRs:
 
 PR kern/57258: kthread_fpu_enter/exit problem
 PR kern/58650: unable to install v10.0 - kernel does not boot, sysinst does not start
 
 
 To generate a diff of this commit:
 cvs rdiff -u -r1.79.4.4 -r1.79.4.5 src/sys/arch/x86/x86/fpu.c
 
 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.
 


Home | Main Index | Thread Index | Old Index