PERFORCE change 28679 for review
Peter Wemm
peter at FreeBSD.org
Wed Apr 9 19:30:17 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=28679
Change 28679 by peter at peter_daintree on 2003/04/09 19:29:36
disable AST processing. THe frame stuff isn't right.
fix the interrupt enable state after fork. Hopefully this will
fix the startup races I've had.
Affected files ...
.. //depot/projects/hammer/sys/x86_64/x86_64/critical.c#6 edit
.. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#18 edit
Differences ...
==== //depot/projects/hammer/sys/x86_64/x86_64/critical.c#6 (text+ko) ====
@@ -28,7 +28,7 @@
td = curthread;
td->td_critnest = 1;
- td->td_md.md_savecrit = read_rflags() & PSL_I;
+ td->td_md.md_savecrit = read_rflags() | PSL_I;
}
/*
==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#18 (text+ko) ====
@@ -195,9 +195,6 @@
movq %r12, %rdi /* function */
movq %rbx, %rsi /* arg1 */
movq %rsp, %rdx /* trapframe pointer */
- movq PCPU(CURTHREAD),%rbx /* setup critnest */
- movl $1,TD_CRITNEST(%rbx)
- sti /* enable interrupts */
call fork_exit
MEXITCOUNT
jmp doreti /* Handle any ASTs */
@@ -227,6 +224,7 @@
/*
* Check if ASTs can be handled now.
*/
+#if 0
testb $SEL_RPL_MASK,TF_CS(%rsp) /* are we returning to user mode? */
jz doreti_exit /* can't handle ASTs now if not */
@@ -253,6 +251,7 @@
* registers. The fault is handled in trap.c.
*/
doreti_exit:
+#endif
MEXITCOUNT
popq %r15
More information about the p4-projects
mailing list