The (no quite so) new kernel perfpolicy code calls cpu_setperf() from a
authorkettenis <kettenis@openbsd.org>
Thu, 4 Jun 2015 18:01:44 +0000 (18:01 +0000)
committerkettenis <kettenis@openbsd.org>
Thu, 4 Jun 2015 18:01:44 +0000 (18:01 +0000)
commitbe3e4ce734139ed581c3e1064647f49864baa6fe
treecd3783f4005a0c5d629201885d568b595ac9f1e0
parent75cbe70248d8a0a873245d8c9752bd770c67b7e1
The (no quite so) new kernel perfpolicy code calls cpu_setperf() from a
timeout.  Unfortunately the smu(4) CPU voltage slewing code sleeps, which
causes a kernel panic.  Prevent this by delegating the CPU frequency switching
and voltage slewing to a task.

ok mpi@
sys/arch/macppc/dev/smu.c
sys/arch/macppc/macppc/cpu.c