Date: Fri, 20 Sep 2002 19:37:55 -0700 (PDT) From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 17808 for review Message-ID: <200209210237.g8L2btdn092526@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://people.freebsd.org/~peter/p4db/chv.cgi?CH=17808 Change 17808 by peter@peter_daintree on 2002/09/20 19:37:40 no more PSL_VM references Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#2 edit .. //depot/projects/hammer/sys/x86_64/x86_64/locore.s#3 edit .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#4 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#2 (text+ko) ==== @@ -276,16 +276,8 @@ FAKE_MCOUNT(bintr) /* init "from" bintr -> doreti */ doreti_next: /* - * Check if ASTs can be handled now. PSL_VM must be checked first - * since segment registers only have an RPL in non-VM86 mode. + * Check if ASTs can be handled now. */ - testl $PSL_VM,TF_EFLAGS(%esp) /* are we in vm86 mode? */ - jz doreti_notvm86 - cmpl $1,in_vm86call /* are we in a vm86 call? XXXSMP */ - jne doreti_ast /* can handle ASTs now if not */ - jmp doreti_exit - -doreti_notvm86: testb $SEL_RPL_MASK,TF_CS(%esp) /* are we returning to user mode? */ jz doreti_exit /* can't handle ASTs now if not */ ==== //depot/projects/hammer/sys/x86_64/x86_64/locore.s#3 (text+ko) ==== @@ -397,10 +397,7 @@ call *SIGF_HANDLER(%esp) /* call signal handler */ lea SIGF_UC(%esp),%eax /* get ucontext_t */ pushl %eax - testl $PSL_VM,UC_EFLAGS(%eax) - jne 9f movl UC_GS(%eax),%gs /* restore %gs */ -9: movl $SYS_sigreturn,%eax pushl %eax /* junk to fake return addr. */ int $0x80 /* enter kernel with args */ ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#4 (text+ko) ==== @@ -205,7 +205,7 @@ * interrupts disabled until they are accidentally * enabled later. */ - if (ISPL(frame.tf_cs) == SEL_UPL || (frame.tf_eflags & PSL_VM)) + if (ISPL(frame.tf_cs) == SEL_UPL) printf( "pid %ld (%s): trap %d with interrupts disabled\n", (long)curproc->p_pid, curproc->p_comm, type); @@ -742,7 +742,7 @@ } printf("instruction pointer = 0x%x:0x%x\n", frame->tf_cs & 0xffff, frame->tf_eip); - if ((ISPL(frame->tf_cs) == SEL_UPL) || (frame->tf_eflags & PSL_VM)) { + if (ISPL(frame->tf_cs) == SEL_UPL) { ss = frame->tf_ss & 0xffff; esp = frame->tf_esp; } else { @@ -1031,7 +1031,7 @@ /* * Traced syscall. */ - if ((orig_tf_eflags & PSL_T) && !(orig_tf_eflags & PSL_VM)) { + if (orig_tf_eflags & PSL_T) { frame.tf_eflags &= ~PSL_T; trapsignal(p, SIGTRAP, 0); } To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200209210237.g8L2btdn092526>