[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XenPPC] [PATCH] Relax IPI stall timeout
When using the register dump feature of Xen, one will often see a message about an IPI finish stall. This is because we expected IPI handlers to run very quickly, but in this case, the handler is doing a lot of console I/O in order to print the register contents. So relax the stall timeout. Signed-off-by: Amos Waterland <apw@xxxxxxxxxx> --- smp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff -r a8e67a19c325 xen/arch/powerpc/smp.c --- a/xen/arch/powerpc/smp.c Tue Nov 28 10:33:53 2006 -0500 +++ b/xen/arch/powerpc/smp.c Tue Nov 28 13:29:50 2006 -0500 @@ -91,6 +91,7 @@ int on_selected_cpus( int wait) { int t, retval = 0, nr_cpus = cpus_weight(selected); + int stall = timebase_freq * 10; spin_lock(&call_lock); @@ -106,7 +107,7 @@ int on_selected_cpus( /* We always wait for an initiation ACK from remote CPU. */ for (t = 0; atomic_read(&call_data.started) != nr_cpus; t++) { - if (t && t % timebase_freq == 0) { + if (t > 0 && t % stall == 0) { printk("IPI start stall: %d ACKS to %d SYNS\n", atomic_read(&call_data.started), nr_cpus); } @@ -115,7 +116,7 @@ int on_selected_cpus( /* If told to, we wait for a completion ACK from remote CPU. */ if (wait) { for (t = 0; atomic_read(&call_data.finished) != nr_cpus; t++) { - if (t > timebase_freq && t % timebase_freq == 0) { + if (t > 0 && t % stall == 0) { printk("IPI finish stall: %d ACKS to %d SYNS\n", atomic_read(&call_data.finished), nr_cpus); } _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |