On Wed, Mar 11, 2015 at 05:56:23PM -0400, Kevin O'Connor wrote:
In 0673b787 the QEMU SMP init code was changed to run
in 32bit mode.
Unfortunately, the transition32 assembler function is not
multi-processor safe, because it modifies the global RTC index
register. This race condition led to sporadic failures when emulating
machines with a large number of processors.
This patch changes the entry_smp code to use a variant of transition32
that does not touch the RTC registers.
FYI, I pushed this change to the main SeaBIOS repo.