freebsd-dev/sys/i386/i386
John Baldwin ad86a65e32 Adjust the handling the various timer frequencies when using the lapic
timer.  Previously, the various divisors were fixed which meant that while
it gave somewhat reasonable stathz, etc. at hz=1000, it went off the rails
with any other hz value.  With these changes, we now pick a lapic timer hz
based on the value of hz.  If hz is >= 1500, then the lapic timer runs at
hz.  If 1500 hz >= 750, we run the lapic timer at hz * 2.  If hz < 750, we
run at hz * 4.  We compute a divider at runtime to make stathz run as close
to 128 as we can since stathz really wants to be run at something close to
that frequency.  Profiling just runs on every clock tick.  So some examples:

With hz = 100, the lapic timer now runs at 400 instead of 2000.  stathz
will be 133, and profhz = 400.  With hz = 1000 (default), the lapic timer
is still at 2000 (as it is now), stathz is at 133 (as it is now), and
profhz will be 2000 (previously 666).

MFC after:	2 weeks
2008-08-23 12:35:43 +00:00
..
apic_vector.s Evidently FreeBSD has long relied on the compiler to treat structures 2006-12-17 05:07:01 +00:00
atomic.c
autoconf.c
bios.c style nit 2007-04-19 09:18:51 +00:00
bioscall.s
bpf_jit_machdep.c MFamd64: Correctly check unsignedness of all registers used 2008-08-18 21:17:47 +00:00
bpf_jit_machdep.h MFamd64: Correctly check unsignedness of all registers used 2008-08-18 21:17:47 +00:00
busdma_machdep.c Integrate support for xen in to i386 common code. 2008-08-15 20:51:31 +00:00
db_disasm.c Decode some more "exotic" instructions including: fxsave, fxrstor, ldmxcsr, 2008-08-11 20:19:42 +00:00
db_interface.c
db_trace.c Break out stack(9) from ddb(4): 2007-12-02 20:40:35 +00:00
dump_machdep.c Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
elan-mmcr.c Despite several examples in the kernel, the third argument of 2007-06-04 18:25:08 +00:00
elf_machdep.c Allow FreeBSD's native ELF image activators to execute shared libraries the 2007-05-22 02:22:58 +00:00
exception.s style fix for newly introduced macro. 2008-05-25 14:50:47 +00:00
gdb_machdep.c
genassym.c Integrate support for xen in to i386 common code. 2008-08-15 20:51:31 +00:00
geode.c Add support for PC Engines ALIX boards. 2008-02-10 19:14:42 +00:00
i686_mem.c The variable MTRR registers actually have variable-sized PhysBase and 2008-03-12 22:09:19 +00:00
identcpu.c The VM system no longer uses setPQL2(). Remove it and its helpers. 2008-05-23 04:03:54 +00:00
in_cksum.c Fold multiple asm statements into one so that the compiler at a certain 2007-10-20 22:18:42 +00:00
initcpu.c Support the VIA C7 Eden CPU and treat it just like a C7 Esther. We may 2008-02-25 22:42:33 +00:00
intr_machdep.c - Add the interrupt vector number to intr_event_create so MI code can 2008-04-11 03:26:41 +00:00
io_apic.c Move a warning under bootverbose as no machines that trigger it have ended 2007-06-05 18:57:48 +00:00
io.c Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
k6_mem.c Add missed parentheses 2008-03-13 09:52:48 +00:00
legacy.c Rework how the nexus(4) device works on x86 to better handle the idea of 2008-03-13 20:39:04 +00:00
local_apic.c Adjust the handling the various timer frequencies when using the lapic 2008-08-23 12:35:43 +00:00
locore.s Drastically simplify the i386 pcpu backend by merging parts of the 2007-11-13 23:00:24 +00:00
longrun.c
machdep.c - clean up interrupt handling for xen a tiny bit 2008-08-20 09:16:46 +00:00
mem.c Fix race conditions. 2006-01-23 15:46:09 +00:00
minidump_machdep.c Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
mp_clock.c Despite several examples in the kernel, the third argument of 2007-06-04 18:25:08 +00:00
mp_machdep.c Adjust comment. This stack is only used for booting now and not as an 2008-08-01 20:10:47 +00:00
mp_watchdog.c Add a new 'why' argument to kdb_enter(), and a set of constants to use 2007-12-25 17:52:02 +00:00
mpboot.s
mptable_pci.c Revamp the MSI/MSI-X code a bit to achieve two main goals: 2007-05-02 17:50:36 +00:00
mptable.c In keeping with style(9)'s recommendations on macros, use a ';' 2008-03-16 10:58:09 +00:00
msi.c Update copyright attribution. 2007-10-24 21:16:22 +00:00
nexus.c Implement a BUS_BIND_INTR() method in the bus interface to bind an IRQ 2008-03-20 21:24:32 +00:00
perfmon.c
pmap.c Make pmap_kenter_attr() static. 2008-08-04 08:04:09 +00:00
ptrace_machdep.c Use the method described in IA-32 Intel Architecture Software Developer's 2006-05-30 23:44:21 +00:00
stack_machdep.c Remove duplicate $FreeBSD$ tag. 2007-12-02 21:07:49 +00:00
support.s Integrate support for xen in to i386 common code. 2008-08-15 20:51:31 +00:00
swtch.s Call in to xen for privileged aspects of context switching 2008-08-16 21:38:46 +00:00
symbols.raw
sys_machdep.c Integrate support for xen in to i386 common code. 2008-08-15 20:51:31 +00:00
trap.c Integrate support for xen in to i386 common code. 2008-08-15 20:51:31 +00:00
tsc.c Despite several examples in the kernel, the third argument of 2007-06-04 18:25:08 +00:00
uio_machdep.c
vm86.c Evidently FreeBSD has long relied on the compiler to treat structures 2006-12-17 05:07:01 +00:00
vm86bios.s Evidently FreeBSD has long relied on the compiler to treat structures 2006-12-17 05:07:01 +00:00
vm_machdep.c fix typo in previous commit breaking bootup 2008-08-20 21:27:48 +00:00