summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2011-07-05 00:30:11 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2011-07-05 00:30:11 +0000
commit4728922f862ae1854c98903169a0a787abdb3989 (patch)
treef5a79fe514144b956831352ccfd8bb1931a6f374 /sys
parentaa4d6a3e6c5e8c4e4837409c7f331324d620a9c9 (diff)
Remove the osyscall() kernel-entry; we do not use it anymore.
ok kettenis guenther tedu
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/i386/i386/locore.s18
-rw-r--r--sys/arch/i386/i386/machdep.c4
-rw-r--r--sys/arch/i386/i386/trap.c23
3 files changed, 8 insertions, 37 deletions
diff --git a/sys/arch/i386/i386/locore.s b/sys/arch/i386/i386/locore.s
index 961a5a57606..a4c62c072c4 100644
--- a/sys/arch/i386/i386/locore.s
+++ b/sys/arch/i386/i386/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.136 2011/07/04 22:53:53 tedu Exp $ */
+/* $OpenBSD: locore.s,v 1.137 2011/07/05 00:30:10 deraadt Exp $ */
/* $NetBSD: locore.s,v 1.145 1996/05/03 19:41:19 christos Exp $ */
/*-
@@ -1506,26 +1506,10 @@ calltrap:
#endif /* DIAGNOSTIC */
/*
- * Old call gate entry for syscall
- */
-IDTVEC(osyscall)
- /* Set eflags in trap frame. */
- pushfl
- popl 8(%esp)
- /* Turn off trace flag and nested task. */
- pushfl
- andb $~((PSL_T|PSL_NT)>>8),1(%esp)
- popfl
- pushl $7 # size of instruction for restart
- jmp syscall1
-IDTVEC(osyscall_end)
-
-/*
* Trap gate entry for syscall
*/
IDTVEC(syscall)
pushl $2 # size of instruction for restart
-syscall1:
pushl $T_ASTFLT # trap # for doing ASTs
INTRENTRY
pushl %esp
diff --git a/sys/arch/i386/i386/machdep.c b/sys/arch/i386/i386/machdep.c
index f2d049be0fd..87625c0a146 100644
--- a/sys/arch/i386/i386/machdep.c
+++ b/sys/arch/i386/i386/machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: machdep.c,v 1.503 2011/06/26 22:39:59 deraadt Exp $ */
+/* $OpenBSD: machdep.c,v 1.504 2011/07/05 00:30:10 deraadt Exp $ */
/* $NetBSD: machdep.c,v 1.214 1996/11/10 03:16:17 thorpej Exp $ */
/*-
@@ -2816,7 +2816,7 @@ extern int IDTVEC(div), IDTVEC(dbg), IDTVEC(nmi), IDTVEC(bpt), IDTVEC(ofl),
IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(dble), IDTVEC(fpusegm),
IDTVEC(tss), IDTVEC(missing), IDTVEC(stk), IDTVEC(prot), IDTVEC(page),
IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align), IDTVEC(syscall), IDTVEC(mchk),
- IDTVEC(osyscall), IDTVEC(simd);
+ IDTVEC(simd);
extern int IDTVEC(f00f_redirect);
diff --git a/sys/arch/i386/i386/trap.c b/sys/arch/i386/i386/trap.c
index 294be925d64..67745a85a47 100644
--- a/sys/arch/i386/i386/trap.c
+++ b/sys/arch/i386/i386/trap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: trap.c,v 1.96 2011/04/05 12:50:15 guenther Exp $ */
+/* $OpenBSD: trap.c,v 1.97 2011/07/05 00:30:10 deraadt Exp $ */
/* $NetBSD: trap.c,v 1.95 1996/05/05 06:50:02 mycroft Exp $ */
/*-
@@ -184,24 +184,11 @@ trap(struct trapframe *frame)
switch (type) {
/* trace trap */
- case T_TRCTRAP: {
-#if defined(DDB) || defined(KGDB)
- /* Make sure nobody is single stepping into kernel land.
- * The syscall has to turn off the trace bit itself. The
- * easiest way, is to simply not call the debugger, until
- * we are through the problematic "osyscall" stub. This
- * is a hack, but it does seem to work.
- */
- extern int Xosyscall, Xosyscall_end;
-
- if (frame->tf_eip >= (int)&Xosyscall &&
- frame->tf_eip <= (int)&Xosyscall_end)
- return;
-#else
- return; /* Just return if no DDB */
+ case T_TRCTRAP:
+#if !(defined(DDB) || defined(KGDB))
+ return; /* Just return if no kernel debugger */
#endif
- }
- /* FALLTHROUGH */
+ /* FALLTHROUGH */
default:
we_re_toast: