Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/arch/alpha



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.




Home | Main Index | Thread Index | Old Index