kernel - Fix mid-kernel-boot lockups due to module order
* Sometimes the kernel would just lock up for no apparent reason. Changing
the preloaded module set (even randomly) could effect the behavior.
* The problem turned out to be an issue with kernel modules needing to
temporarily migrate to another cpu (such as when installing a SWI or
other interrupt handler). If the idle thread on cpu 0 had not yet
bootstrapped, lwkt_switch_return() would not be called properly and
the LWKT cpu migration code would never schedule on the target cpu.
* Fix the problem by handling the idle thread bootstrap case for cpu 0
properly in pc64.