Re: Rescheduling interrupts

From: Ingo Molnar
Date: Tue Jan 22 2008 - 10:24:13 EST



* S.ÃaÄlar Onur <caglar@xxxxxxxxxxxxx> wrote:

> I grabbed the logs two times to make sure to catch needed info. 1st [1] one is generated while "Rescheduling interrupts" wakeups ~200 times and 2nd one generated for ~350 wakeups.
>
> [1] http://cekirdek.pardus.org.tr/~caglar/dmesg.1st
> [2] http://cekirdek.pardus.org.tr/~caglar/dmesg.2nd

thanks, these seem to be mostly normal wakeups from standard tasks:

IPI from task kdm_greet:2118 on CPU#0:
IPI from task X:2079 on CPU#1:
IPI from task kdm_greet:2118 on CPU#0:
IPI from task hald-addon-inpu:2009 on CPU#1:
IPI from task events/0:7 on CPU#1:
IPI from task bash:2129 on CPU#0:
IPI from task kdm_greet:2118 on CPU#0:
IPI from task events/0:7 on CPU#1:
IPI from task events/0:7 on CPU#1:
IPI from task events/0:7 on CPU#1:
IPI from task bash:3902 on CPU#1:
IPI from task bash:3902 on CPU#1:
IPI from task amarokapp:3423 on CPU#1:
IPI from task amarokapp:3423 on CPU#1:
IPI from task amarokapp:3423 on CPU#1:
IPI from task X:2079 on CPU#0:
IPI from task yakuake:3422 on CPU#0:
IPI from task X:2079 on CPU#1:
IPI from task amarokapp:3423 on CPU#1:
IPI from task amarokapp:3423 on CPU#1:

could you also add a similar IPI printouts (with the same panic_timeout
logic) to arch/x86/kernel/smp_32.c's smp_reschedule_interrupt() function
- while still keeping the other printouts too?

Could you also enable PRINTK_TIME timestamps, so that we can see the
timings? (And do a "dmesg -n 1" so that the printks happen fast and the
timings are accurate.) I'd suggest to increase CONFIG_LOG_BUF_SHIFT to
20, so that your dmesg buffer is large enough. Plus try to capture 100
events, ok?

My theory is that for whatever reason we get "repeat" IPIs: multiple
reschedule IPIs although the other CPU only initiated one.

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/