mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-12 09:58:36 +00:00
MFi386: revision 1.249
Add a cyclic hook for DTrace.
This commit is contained in:
parent
4970de14a5
commit
6f73422ac9
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=179283
@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
|
||||
|
||||
#include "opt_apic.h"
|
||||
#include "opt_clock.h"
|
||||
#include "opt_kdtrace.h"
|
||||
#include "opt_isa.h"
|
||||
#include "opt_mca.h"
|
||||
|
||||
@ -77,6 +78,10 @@ __FBSDID("$FreeBSD$");
|
||||
#include <isa/isavar.h>
|
||||
#endif
|
||||
|
||||
#ifdef KDTRACE_HOOKS
|
||||
#include <sys/dtrace_bsd.h>
|
||||
#endif
|
||||
|
||||
#define TIMER_DIV(x) ((i8254_freq + (x) / 2) / (x))
|
||||
|
||||
int clkintr_pending;
|
||||
@ -134,6 +139,18 @@ clkintr(struct trapframe *frame)
|
||||
mtx_unlock_spin(&clock_lock);
|
||||
}
|
||||
KASSERT(!using_lapic_timer, ("clk interrupt enabled with lapic timer"));
|
||||
|
||||
#ifdef KDTRACE_HOOKS
|
||||
/*
|
||||
* If the DTrace hooks are configured and a callback function
|
||||
* has been registered, then call it to process the high speed
|
||||
* timers.
|
||||
*/
|
||||
int cpu = PCPU_GET(cpuid);
|
||||
if (lapic_cyclic_clock_func[cpu] != NULL)
|
||||
(*lapic_cyclic_clock_func[cpu])(frame);
|
||||
#endif
|
||||
|
||||
hardclock(TRAPF_USERMODE(frame), TRAPF_PC(frame));
|
||||
return (FILTER_HANDLED);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user