diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2011-07-05 00:30:11 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2011-07-05 00:30:11 +0000 |
commit | 4728922f862ae1854c98903169a0a787abdb3989 (patch) | |
tree | f5a79fe514144b956831352ccfd8bb1931a6f374 /sys | |
parent | aa4d6a3e6c5e8c4e4837409c7f331324d620a9c9 (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.s | 18 | ||||
-rw-r--r-- | sys/arch/i386/i386/machdep.c | 4 | ||||
-rw-r--r-- | sys/arch/i386/i386/trap.c | 23 |
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: |