lkml.org 
[lkml]   [2006]   [Feb]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 2/2] Re: 2.6.16-rc1-mm4
Date
On Wednesday 01 February 2006 01:59, Dave Jones wrote:
> On Tue, Jan 31, 2006 at 07:19:40PM -0500, Dave Jones wrote:
> > On Tue, Jan 31, 2006 at 02:45:58PM -0800, Avuton Olrich wrote:
> > > On 1/29/06, Andrew Morton <akpm@osdl.org> wrote:
> > > >
> > > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.16-rc1/2.6.16-rc1-mm4/
> > >
> > > I'm getting a kernel panic on my Libretto L5 on boot, I don't have a
> > > serial port on this laptop, I don't have time at the moment to setup
> > > netconsole, and it doesn't get the full information. Hopefully this
> > > picture helps a bit:
> > >
> > > http://68.111.224.150:8080/P1010306.JPG
> > >
> > > If it doesn't help I will attempt to get a netconsole on this computer
> > > on the near future.
> >
> > Thomas recently changed cpufreq_update_policy to call cpufreq_out_of_sync()
> > to resync when the BIOS changed the frequency behind our back.
> > The div by 0 trace fingers that code, but I'm puzzled what we're actually
> > dividing there.
>
> it'd be interesting to see the output of cpufreq.debug=7 to see
> what adjust_jiffies is getting before we div by 0, though I fear
> it'll scroll off the screen before we get a chance to capture it.
>

Test for old_freq equals 0 to insure not to divide by 0:
______________________________________________

Check for not initialized freq on cpufreq changes

signed-off-by: Thomas Renninger <trenn@suse.de>


Index: linux-2.6.16-rc1-mm3/arch/i386/kernel/timers/timer_tsc.c
===================================================================
--- linux-2.6.16-rc1-mm3.orig/arch/i386/kernel/timers/timer_tsc.c
+++ linux-2.6.16-rc1-mm3/arch/i386/kernel/timers/timer_tsc.c
@@ -272,6 +272,10 @@ time_cpufreq_notifier(struct notifier_bl
if (val != CPUFREQ_RESUMECHANGE)
write_seqlock_irq(&xtime_lock);
if (!ref_freq) {
+ if (!freq->old){
+ ref_freq = freq->new;
+ goto end;
+ }
ref_freq = freq->old;
loops_per_jiffy_ref = cpu_data[freq->cpu].loops_per_jiffy;
#ifndef CONFIG_SMP
@@ -297,6 +301,7 @@ time_cpufreq_notifier(struct notifier_bl
#endif
}

+end:
if (val != CPUFREQ_RESUMECHANGE)
write_sequnlock_irq(&xtime_lock);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2006-02-01 11:41    [W:0.064 / U:0.468 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site