Module Name: src Committed By: thorpej Date: Tue Sep 29 01:33:01 UTC 2020
Modified Files: src/sys/arch/alpha/alpha: clock.c cpu.c qemu.c src/sys/arch/alpha/include: cpu.h Log Message: Improve time keeping and host CPU usage when running in Qemu: - clockattach(): Allow multiple calls when running in Qemu. Anything after this first one is ignored, but this gives us a change to use a clock source provided by the VM directly, rather than relying on a more expensive hardware emulation. - Add cpu_initclocks_secondary(), to handle clock setup on secondary CPUs, if needed. - Allow us to use the WTINT PALcode call in cpu_idle() to idle in a lower power state (Qemu's PALcode supports this). - Use the Qemu per-cpu set-alarm-rel call as the hardclock interrupt source. In Qemu environments, reduce hz to 50 (rather than the default 1024) to give the clock a snowball's chance when running on a host system with hz=100. XXX We have to manually re-calculate tick and tickadj. There should be MI code to do this for us. Also in Qemu environments, let hardclock() drive the sched clock by setting schedhz=0. To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/sys/arch/alpha/alpha/clock.c cvs rdiff -u -r1.100 -r1.101 src/sys/arch/alpha/alpha/cpu.c cvs rdiff -u -r1.1 -r1.2 src/sys/arch/alpha/alpha/qemu.c cvs rdiff -u -r1.97 -r1.98 src/sys/arch/alpha/include/cpu.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.