Re: [PATCH] kernel crash in powernow-k8 after lost ticks detected

From: Andi Kleen
Date: Fri Mar 24 2006 - 09:30:52 EST


"Jan Beulich" <jbeulich@xxxxxxxxxx> writes:

> Since powernowk8_cpu_init() gets called only for one of the two cores (the
> other one is in the same policy set and hence cpufreq_add_dev() prevents the
> call), calling other functions, namely powernowk8_get(), one CPUs that haven't
> been initialized will yield a NULL from the respective powernow_data[] slot. In
> the specific case, the problem occured after the system detected some lost
> ticks and called cpufreq_get() for all CPUs.
> While I can imagine more sophisticated fixes for this (it namely seems
> questionable whether calling the init routines not on all CPUs, or, if that's
> necessary, whether not properly setting up the data pointers for all affected
> CPUs in powernow-k8 is okay), below simple change seems to address the
> problem (the other hunk is to make a message more meaningful).

I already have a patch queued for this - also ran into it.
But I did it slightly differently by making sure powernow_data[] is valid
for all cores.

-Andi
-
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/