svn commit: r321005 - stable/10/sys/i386/i386
Konstantin Belousov
kib at FreeBSD.org
Sat Jul 15 06:38:03 UTC 2017
Author: kib
Date: Sat Jul 15 06:38:01 2017
New Revision: 321005
URL: https://svnweb.freebsd.org/changeset/base/321005
Log:
MFC r320804:
Fix handling of one more possible exception on return to usermode.
Modified:
stable/10/sys/i386/i386/trap.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/i386/i386/trap.c
==============================================================================
--- stable/10/sys/i386/i386/trap.c Sat Jul 15 06:33:39 2017 (r321004)
+++ stable/10/sys/i386/i386/trap.c Sat Jul 15 06:38:01 2017 (r321005)
@@ -567,11 +567,7 @@ trap(struct trapframe *frame)
vm86_trap((struct vm86frame *)frame);
goto out;
}
- if (type == T_STKFLT)
- break;
-
/* FALL THROUGH */
-
case T_SEGNPFLT: /* segment not present fault */
if (curpcb->pcb_flags & PCB_VM86CALL)
break;
@@ -612,6 +608,9 @@ trap(struct trapframe *frame)
frame->tf_eip = (int)doreti_iret_fault;
goto out;
}
+ if (type == T_STKFLT)
+ break;
+
if (frame->tf_eip == (int)doreti_popl_ds) {
frame->tf_eip = (int)doreti_popl_ds_fault;
goto out;
More information about the svn-src-all
mailing list