summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKATO Takenori <kato@FreeBSD.org>1999-02-16 11:07:06 +0000
committerKATO Takenori <kato@FreeBSD.org>1999-02-16 11:07:06 +0000
commit7c9eb5b166f51eeec675248f86b941ae9619c6c3 (patch)
tree76ee23731f5437b4f7b6f966e5b5e05d3413cf9f
parentce02431ffafa566f9c73b08cd91a3f5b12ff443e (diff)
Notes
-rw-r--r--sys/pc98/i386/machdep.c10
-rw-r--r--sys/pc98/pc98/machdep.c10
2 files changed, 16 insertions, 4 deletions
diff --git a/sys/pc98/i386/machdep.c b/sys/pc98/i386/machdep.c
index b451be5d19c1..8ecc8cf16956 100644
--- a/sys/pc98/i386/machdep.c
+++ b/sys/pc98/i386/machdep.c
@@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)machdep.c 7.4 (Berkeley) 6/3/91
- * $Id: machdep.c,v 1.107 1999/02/04 09:55:42 kato Exp $
+ * $Id: machdep.c,v 1.108 1999/02/12 09:15:33 kato Exp $
*/
#include "apm.h"
@@ -627,8 +627,14 @@ sendsig(catcher, sig, mask, code)
* We should never have PSL_T set when returning from vm86
* mode. It may be set here if we deliver a signal before
* getting to vm86 mode, so turn it off.
+ *
+ * Clear PSL_NT to inhibit T_TSSFLT faults on return from
+ * syscalls made by the signal handler. This just avoids
+ * wasting time for our lazy fixup of such faults. PSL_NT
+ * does nothing in vm86 mode, but vm86 programs can set it
+ * almost legitimately in probes for old cpu types.
*/
- tf->tf_eflags &= ~(PSL_VM | PSL_T | PSL_VIF | PSL_VIP);
+ tf->tf_eflags &= ~(PSL_VM | PSL_NT | PSL_T | PSL_VIF | PSL_VIP);
}
#endif /* VM86 */
diff --git a/sys/pc98/pc98/machdep.c b/sys/pc98/pc98/machdep.c
index b451be5d19c1..8ecc8cf16956 100644
--- a/sys/pc98/pc98/machdep.c
+++ b/sys/pc98/pc98/machdep.c
@@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)machdep.c 7.4 (Berkeley) 6/3/91
- * $Id: machdep.c,v 1.107 1999/02/04 09:55:42 kato Exp $
+ * $Id: machdep.c,v 1.108 1999/02/12 09:15:33 kato Exp $
*/
#include "apm.h"
@@ -627,8 +627,14 @@ sendsig(catcher, sig, mask, code)
* We should never have PSL_T set when returning from vm86
* mode. It may be set here if we deliver a signal before
* getting to vm86 mode, so turn it off.
+ *
+ * Clear PSL_NT to inhibit T_TSSFLT faults on return from
+ * syscalls made by the signal handler. This just avoids
+ * wasting time for our lazy fixup of such faults. PSL_NT
+ * does nothing in vm86 mode, but vm86 programs can set it
+ * almost legitimately in probes for old cpu types.
*/
- tf->tf_eflags &= ~(PSL_VM | PSL_T | PSL_VIF | PSL_VIP);
+ tf->tf_eflags &= ~(PSL_VM | PSL_NT | PSL_T | PSL_VIF | PSL_VIP);
}
#endif /* VM86 */