On Sat, Sep 17, 2011 at 5:15 PM, Alexander Graf <ag...@suse.de> wrote: > > Am 17.09.2011 um 18:58 schrieb Blue Swirl <blauwir...@gmail.com>: > >> On Wed, Sep 14, 2011 at 8:42 AM, Alexander Graf <ag...@suse.de> wrote: >>> CPUs that are not the boot CPU need to run in spinning code to check if they >>> should run off to execute and if so where to jump to. This usually happens >>> by leaving secondary CPUs looping and checking if some variable in memory >>> changed. >>> >>> In an environment like Qemu however we can be more clever. We can just >>> export >>> the spin table the primary CPU modifies as MMIO region that would event >>> based >>> wake up the respective secondary CPUs. That saves us quite some cycles while >>> the secondary CPUs are not up yet. >>> >>> So this patch adds a PV device that simply exports the spinning table into >>> the >>> guest and thus allows the primary CPU to wake up secondary ones. >> >> On Sparc32, there is no need for a PV device. The CPU is woken up from >> halted state with an IPI. Maybe you could use this approach? > > The way it's done here is defined by u-boot and now also nailed down in the > ePAPR architecture spec. While alternatives might be more appealing, this is > how guests work today :).
OK. I hoped that there were no implementations yet. The header (btw missing) should point to the spec.