Re: [2.6.21] BUG: clocksource_watchdog isn't reset after resume

From: Indan Zupancic
Date: Sun Apr 29 2007 - 18:54:38 EST


On Sun, April 29, 2007 21:25, Thomas Gleixner wrote:
> On Sun, 2007-04-29 at 18:20 +0200, Indan Zupancic wrote:
>> Hello,
>>
>> After s2ram, basically the following happens, which shouldn't happen:
>>
>> [ 0.880234] Clocksource tsc unstable (delta = 449782067799 ns)
>> [ 0.881221] Time: pit clocksource has been installed.
>>
>> Looking at the source, it seems that clocksource_watchdog isn't reset
>> after resume, while the clock source used is, and hence it thinks that
>> the clock is unstable.
>
> Yup, missed that. I was looking into the resume path anyway for other
> reasons. Does the patch below fix your problem ?

Yes it does, thanks!

Just wondering, but is it expected that tsc doesn't show up in
/proc/timer_list? Output below:

$ cat /proc/timer_list
Timer List Version: v0.3
HRTIMER_MAX_CLOCK_BASES: 2
now at 557820361144 nsecs

cpu: 0
clock 0:
.index: 0
.resolution: 999848 nsecs
.get_time: ktime_get_real
active timers:
clock 1:
.index: 1
.resolution: 999848 nsecs
.get_time: ktime_get
active timers:
#0: <b6e12f10>, it_real_fn, S:01
# expires at 557838167583 nsecs [in 17806439 nsecs]
#1: <b6e12f10>, it_real_fn, S:01
# expires at 577078756293 nsecs [in 19258395149 nsecs]
#2: <b6e12f10>, hrtimer_wakeup, S:01
# expires at 607716759262 nsecs [in 49896398118 nsecs]
#3: <b6e12f10>, it_real_fn, S:01
# expires at 3656633914145 nsecs [in 3098813553001 nsecs]


Tick Device: mode: 0
Clock Event Device: pit
max_delta_ns: 27461866
min_delta_ns: 12571
mult: 5124677
shift: 32
mode: 4
next_event: 0 nsecs
set_next_event: pit_next_event
set_mode: init_pit_timer
event_handler: clockevents_handle_noop
tick_broadcast_mask: 00000000


Tick Device: mode: 0
Clock Event Device: lapic
max_delta_ns: 674685450
min_delta_ns: 1206
mult: 53400874
shift: 32
mode: 2
next_event: 0 nsecs
set_next_event: lapic_next_event
set_mode: lapic_timer_setup
event_handler: tick_handle_periodic

Greetings,

Indan


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