summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1997-04-13 16:58:08 +0000
committerbde <bde@FreeBSD.org>1997-04-13 16:58:08 +0000
commit72796f8cafa10e6a9b429b9fa82b36f1f780d66d (patch)
tree2dc53e45486da4925cc9e0d468399c84f621f561 /sys
parentd0ab7d0baaede57260efbc9df4dacfe242b15b4a (diff)
downloadFreeBSD-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.S14
-rw-r--r--sys/amd64/amd64/exception.s14
-rw-r--r--sys/i386/i386/exception.s14
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 */
OpenPOWER on IntegriCloud