soc/*: mp_run_on_all_cpus: Remove configurable timeout
Some timeouts given were too small when serial console is enabled due to its spinlock making code runtime worse with every AP present. In addition we usually don't know how long specific code runs and how long ago it was sent to the APs. Remove the timeout argument from mp_run_on_all_cpus and instead wait up to 1 second, to prevent possible crashing of secondary APs still processing the old job. Tested on Supermicro X11SSH-TF. Change-Id: I456be647b159f7a2ea7d94986a24424e56dcc8c4 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/34587 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
This commit is contained in:
committed by
Patrick Rudolph
parent
1bc6bf1152
commit
5ec97cea67
@@ -491,11 +491,11 @@ static void post_mp_init(void)
|
||||
if (CONFIG(HAVE_SMI_HANDLER))
|
||||
smm_lock();
|
||||
|
||||
ret |= mp_run_on_all_cpus(vmx_configure, NULL, 2 * USECS_PER_MSEC);
|
||||
ret |= mp_run_on_all_cpus(vmx_configure, NULL);
|
||||
|
||||
ret |= mp_run_on_all_cpus(sgx_configure, NULL, 14 * USECS_PER_MSEC);
|
||||
ret |= mp_run_on_all_cpus(sgx_configure, NULL);
|
||||
|
||||
ret |= mp_run_on_all_cpus(fc_lock_configure, NULL, 2 * USECS_PER_MSEC);
|
||||
ret |= mp_run_on_all_cpus(fc_lock_configure, NULL);
|
||||
|
||||
if (ret)
|
||||
printk(BIOS_CRIT, "CRITICAL ERROR: MP post init failed\n");
|
||||
|
Reference in New Issue
Block a user