Module Name: src Committed By: maxv Date: Fri Jun 29 19:21:43 UTC 2018
Modified Files: src/sys/arch/amd64/amd64: locore.S src/sys/arch/i386/i386: locore.S Log Message: Call fpu_eagerswitch a little later, after we make sure newlwp is not pinned. Because if it is, the fpu state of the lwp we are context-switching to is already installed on the current cpu, so no point re-installing it. Or, it isn't, and in this case we don't want to install it. This wrong re-installation can occur when we leave a softint. It may fix bugs in places that call fpusave_lwp with spl != IPL_HIGH, and that expect the fpu state to stay in memory. As far as I can tell only cpu_lwp_free meets these conditions, and as far as I can tell again, there it's harmless. Should help PR/53399. To generate a diff of this commit: cvs rdiff -u -r1.166 -r1.167 src/sys/arch/amd64/amd64/locore.S cvs rdiff -u -r1.157 -r1.158 src/sys/arch/i386/i386/locore.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.