Re: [patch 03/23] GTOD: persistent clock support, i386

From: john stultz
Date: Mon Oct 02 2006 - 19:09:35 EST


On Mon, 2006-10-02 at 15:44 -0700, Andrew Morton wrote:
> On Mon, 02 Oct 2006 15:03:37 -0700
> john stultz <johnstul@xxxxxxxxxx> wrote:
>
> > static int timer_resume(struct sys_device *dev)
> > {
> > - unsigned long flags;
> > - unsigned long sec;
> > - unsigned long ctime = get_cmos_time();
> > - long sleep_length = (ctime - sleep_start) * HZ;
> > - struct timespec ts;
> > -
> > - if (sleep_length < 0) {
> > - printk(KERN_WARNING "CMOS clock skew detected in timer resume!\n");
> > - /* The time after the resume must not be earlier than the time
> > - * before the suspend or some nasty things will happen
> > - */
> > - sleep_length = 0;
> > - ctime = sleep_start;
> > - }
> > #ifdef CONFIG_HPET_TIMER
> > if (is_hpet_enabled())
> > hpet_reenable();
> > #endif
> > setup_pit_timer();
> > -
> > - sec = ctime + clock_cmos_diff;
> > - ts.tv_sec = sec;
> > - ts.tv_nsec = 0;
> > - do_settimeofday(&ts);
> > - write_seqlock_irqsave(&xtime_lock, flags);
> > - jiffies_64 += sleep_length;
> > - write_sequnlock_irqrestore(&xtime_lock, flags);
> > touch_softlockup_watchdog();
> > return 0;
> > }
>
> In this version of the patch, you no longer remove the
> touch_softlockup_watchdog() call from timer_resume().

Yea. That removal was added by Thomas, and I didn't merge it into my
tree.

> But clockevents-drivers-for-i386.patch deletes timer_resume()
> altogether.
>
> Hence we might need to put that re-added touch_softlockup_watchdog() call
> into somewhere else now.

Yea. While my dropping the change wasn't intentional, it seems the
change isn't really part of the persistent_clock changes, so the removal
should be done in one of the clockevents patches.

But I'll have to defer to tglx as to which one.

thanks
-john

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