Messages in this thread | | | Date | Fri, 16 May 2014 01:04:50 +0530 | From | "Srivatsa S. Bhat" <> | Subject | Re: [PATCH v5 1/3] smp: Print more useful debug info upon receiving IPI on an offline CPU |
| |
On 05/16/2014 12:49 AM, Joe Perches wrote: > On Fri, 2014-05-16 at 00:43 +0530, Srivatsa S. Bhat wrote: >> Today the smp-call-function code just prints a warning if we get an IPI on >> an offline CPU. This info is sufficient to let us know that something went >> wrong, but often it is very hard to debug exactly who sent the IPI and why, >> from this info alone. > [] >> diff --git a/kernel/smp.c b/kernel/smp.c > [] >> @@ -185,14 +185,26 @@ void generic_smp_call_function_single_interrupt(void) > [] >> - entry = llist_del_all(&__get_cpu_var(call_single_queue)); >> - entry = llist_reverse_order(entry); >> + /* >> + * We don't have to use the _safe() variant here >> + * because we are not invoking the IPI handlers yet. >> + */ >> + llist_for_each_entry(csd, entry, llist) >> + pr_warn("IPI callback %pS sent to offline CPU\n", >> + csd->func); > > Perhaps add ratelimited? >
This entire scenario is expected to be _very_ infrequent, and even if it happens, these prints will appear only once during the entire run (note the use of the 'warned' variable to control that). So I don't think ratelimiting is called for in this case.
Regards, Srivatsa S. Bhat
| |