svn commit: r334924 - head/sys/i386/i386

Bruce Evans bde at FreeBSD.org
Sun Jun 10 14:21:02 UTC 2018


Author: bde
Date: Sun Jun 10 14:21:01 2018
New Revision: 334924
URL: https://svnweb.freebsd.org/changeset/base/334924

Log:
  Fix panics in potentially all x86bios calls on i386 since r332489.
  
  A call to npxsave() in the exception trampolines was not relocated.
  This call to a garbage address usually paniced when made, but it is only
  made when the thread has used an FPU recently, and this is not the usual
  case.
  
  PR:		228755
  Reviewed by:	kib

Modified:
  head/sys/i386/i386/vm86bios.s

Modified: head/sys/i386/i386/vm86bios.s
==============================================================================
--- head/sys/i386/i386/vm86bios.s	Sun Jun 10 10:23:31 2018	(r334923)
+++ head/sys/i386/i386/vm86bios.s	Sun Jun 10 14:21:01 2018	(r334924)
@@ -67,7 +67,8 @@ ENTRY(vm86_bioscall)
 	pushl	%edx
 	movl	TD_PCB(%ecx),%ecx
 	pushl	PCB_SAVEFPU(%ecx)
-	call	npxsave
+	movl	$npxsave,%eax
+	call	*%eax
 	addl	$4,%esp
 	popl	%edx			/* recover our pcb */
 1:


More information about the svn-src-head mailing list