diff options
author | bde <bde@FreeBSD.org> | 1997-04-13 16:58:08 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1997-04-13 16:58:08 +0000 |
commit | 72796f8cafa10e6a9b429b9fa82b36f1f780d66d (patch) | |
tree | 2dc53e45486da4925cc9e0d468399c84f621f561 /sys | |
parent | d0ab7d0baaede57260efbc9df4dacfe242b15b4a (diff) | |
download | FreeBSD-src-72796f8cafa10e6a9b429b9fa82b36f1f780d66d.zip FreeBSD-src-72796f8cafa10e6a9b429b9fa82b36f1f780d66d.tar.gz |
Don't forget to set `runtime' in fork_trampoline(). The time slice before
switching to a child for the first time was being counted twice. I think
this only affected unimportant statistics.
Simplified arg handling in fork_trampoline(). splz() doesn't actually
smash the registers of interest.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/amd64/amd64/exception.S | 14 | ||||
-rw-r--r-- | sys/amd64/amd64/exception.s | 14 | ||||
-rw-r--r-- | sys/i386/i386/exception.s | 14 |
3 files changed, 21 insertions, 21 deletions
diff --git a/sys/amd64/amd64/exception.S b/sys/amd64/amd64/exception.S index cfeea3f..0ab3b33 100644 --- a/sys/amd64/amd64/exception.S +++ b/sys/amd64/amd64/exception.S @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: exception.s,v 1.22 1997/04/07 07:15:48 peter Exp $ + * $Id: exception.s,v 1.23 1997/04/07 11:42:09 peter Exp $ */ #include "npx.h" /* NNPX */ @@ -251,14 +251,14 @@ IDTVEC(int0x80_syscall) jmp _doreti ENTRY(fork_trampoline) - pushl %ebx /* splz smashes regs */ - pushl %esi - - movl $SWI_AST_MASK,%eax /* spl0() */ - movl %eax,_cpl + movl $SWI_AST_MASK,_cpl call _splz - popl %esi /* arg1 */ + pushl $_runtime + call _microtime + popl %eax + + pushl %ebx /* arg1 */ call %esi /* function */ addl $4,%esp /* cut from syscall */ diff --git a/sys/amd64/amd64/exception.s b/sys/amd64/amd64/exception.s index cfeea3f..0ab3b33 100644 --- a/sys/amd64/amd64/exception.s +++ b/sys/amd64/amd64/exception.s @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: exception.s,v 1.22 1997/04/07 07:15:48 peter Exp $ + * $Id: exception.s,v 1.23 1997/04/07 11:42:09 peter Exp $ */ #include "npx.h" /* NNPX */ @@ -251,14 +251,14 @@ IDTVEC(int0x80_syscall) jmp _doreti ENTRY(fork_trampoline) - pushl %ebx /* splz smashes regs */ - pushl %esi - - movl $SWI_AST_MASK,%eax /* spl0() */ - movl %eax,_cpl + movl $SWI_AST_MASK,_cpl call _splz - popl %esi /* arg1 */ + pushl $_runtime + call _microtime + popl %eax + + pushl %ebx /* arg1 */ call %esi /* function */ addl $4,%esp /* cut from syscall */ diff --git a/sys/i386/i386/exception.s b/sys/i386/i386/exception.s index cfeea3f..0ab3b33 100644 --- a/sys/i386/i386/exception.s +++ b/sys/i386/i386/exception.s @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: exception.s,v 1.22 1997/04/07 07:15:48 peter Exp $ + * $Id: exception.s,v 1.23 1997/04/07 11:42:09 peter Exp $ */ #include "npx.h" /* NNPX */ @@ -251,14 +251,14 @@ IDTVEC(int0x80_syscall) jmp _doreti ENTRY(fork_trampoline) - pushl %ebx /* splz smashes regs */ - pushl %esi - - movl $SWI_AST_MASK,%eax /* spl0() */ - movl %eax,_cpl + movl $SWI_AST_MASK,_cpl call _splz - popl %esi /* arg1 */ + pushl $_runtime + call _microtime + popl %eax + + pushl %ebx /* arg1 */ call %esi /* function */ addl $4,%esp /* cut from syscall */ |