On Sat, 12 Mar 2005, George Anzinger wrote:

> Looks like we need the irq on the read clock also.  This is true both before
> and  after the prior cmos_time changes.
> 
> The attached replaces the patch I sent yesterday.
> 
> For those wanting to fix the kernel with out those patches, all that is needed
> its the chunk that applies, i.e. the _irq on the get_cmos_time() spinlocks.
> 
> And more... That this occures implies we are attempting to update the cmos
> clock on resume seems wrong.  One would presume that the time is wrong at this
> time and we are about to save that wrong time.  Possibly the APM code should
> change time_status to STA_UNSYNC on the way into the sleep (or what ever it is
> called).  Who should we ping with this?

timer_resume, which appears to be the problem, wants to calculate amount 
of time was spent suspended, also your unconditional irq enable in 
get_cmos_time breaks the atomicity of device_power_up and would deadlock 
in sections of code which call get_time_diff() with xtime_lock held. I 
sent a patch subject "APM: fix interrupts enabled in device_power_up" 
which should address this.

Thanks,
        Zwane

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

Reply via email to