summaryrefslogtreecommitdiffstats
path: root/sys/amd64/amd64/apic_vector.S
diff options
context:
space:
mode:
authorjake <jake@FreeBSD.org>2003-02-03 17:53:15 +0000
committerjake <jake@FreeBSD.org>2003-02-03 17:53:15 +0000
commit6b3763a173b458d3138f8a5ae81d7574349cc99d (patch)
tree4ac2b707510b8d738855f9fa4a6576e6ded49a77 /sys/amd64/amd64/apic_vector.S
parent9689f0580db3e8ffcfba46b99c0b3a370eb9524c (diff)
downloadFreeBSD-src-6b3763a173b458d3138f8a5ae81d7574349cc99d.zip
FreeBSD-src-6b3763a173b458d3138f8a5ae81d7574349cc99d.tar.gz
Split statclock into statclock and profclock, and made the method for driving
statclock based on profhz when profiling is enabled MD, since most platforms don't use this anyway. This removes the need for statclock_process, whose only purpose was to subdivide profhz, and gets the profiling clock running outside of sched_lock on platforms that implement suswintr. Also changed the interface for starting and stopping the profiling clock to do just that, instead of changing the rate of statclock, since they can now be separate. Reviewed by: jhb, tmm Tested on: i386, sparc64
Diffstat (limited to 'sys/amd64/amd64/apic_vector.S')
-rw-r--r--sys/amd64/amd64/apic_vector.S8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/amd64/amd64/apic_vector.S b/sys/amd64/amd64/apic_vector.S
index f8e0321..e4b6ea5 100644
--- a/sys/amd64/amd64/apic_vector.S
+++ b/sys/amd64/amd64/apic_vector.S
@@ -365,7 +365,7 @@ Xinvlrng:
iret
/*
- * Forward hardclock to another CPU. Pushes a trapframe and calls
+ * Forward hardclock to another CPU. Pushes a clockframe and calls
* forwarded_hardclock().
*/
.text
@@ -389,14 +389,16 @@ Xhardclock:
jmp 10f
1:
incl TD_INTR_NESTING_LEVEL(%ebx)
+ pushl $0 /* XXX convert trapframe to clockframe */
call forwarded_hardclock
+ addl $4, %esp /* XXX convert clockframe to trapframe */
decl TD_INTR_NESTING_LEVEL(%ebx)
10:
MEXITCOUNT
jmp doreti
/*
- * Forward statclock to another CPU. Pushes a trapframe and calls
+ * Forward statclock to another CPU. Pushes a clockframe and calls
* forwarded_statclock().
*/
.text
@@ -422,7 +424,9 @@ Xstatclock:
jmp 10f
1:
incl TD_INTR_NESTING_LEVEL(%ebx)
+ pushl $0 /* XXX convert trapframe to clockframe */
call forwarded_statclock
+ addl $4, %esp /* XXX convert clockframe to trapframe */
decl TD_INTR_NESTING_LEVEL(%ebx)
10:
MEXITCOUNT
OpenPOWER on IntegriCloud