2010/8/28 Venkatesh Pallipadi : > > OK. So, the problem seems to be limited to HPET and 5 min multiples. > >> john stultz : >> Huh. So you're thinking the timer tick scheduler is pushing way past the >> HPET wrap length, and then we're missing an accumulation point and >> things wrap under us? > > John: I don't think it is that we are going tickless beyond HPET wrap > length. HPET max delta should be preventing that. > We probably need to read out HPET hardware counter to see whether > things are OK there. Even if we miss the interrupt, time update should > notice that. One potential problem may be that HPET hardware can only > do 32 bit mode, but advertising 64 bit mode and we are getting > confused when we update time? > > jean-philippe: What does hpet section of "cat /proc/timer_list" look > like? Tick Device: mode: 1 Broadcast device Clock Event Device: hpet max_delta_ns: 2147483647 min_delta_ns: 7500 mult: 61496114 shift: 32 mode: 3 next_event: 11289189000000 nsecs set_next_event: hpet_legacy_next_event set_mode: hpet_legacy_set_mode event_handler: tick_handle_oneshot_broadcast tick_broadcast_mask: 00000003 tick_broadcast_oneshot_mask: 00000002 > Also, can you boot with "hpet=verbose" option and send the > dmesg. > Please find attached, and quoted below with the hpet section only : [ 0.000000] Kernel command line: root=UUID=d6f01bdd-8503-4992-bc4e-a511f74318fb ro quiet splash hpet=verbose [ 0.000000] hpet: hpet_enable(895): [ 0.000000] hpet: ID: 0x8086a201, PERIOD: 0x429b17f [ 0.000000] hpet: CFG: 0x0, STATUS: 0x0 [ 0.000000] hpet: COUNTER_l: 0x0, COUNTER_h: 0x0 [ 0.000000] hpet: T0: CFG_l: 0x30, CFG_h: 0xf00000 [ 0.000000] hpet: T0: CMP_l: 0xffffffff, CMP_h: 0xffffffff [ 0.000000] hpet: T0 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.000000] hpet: T1: CFG_l: 0x0, CFG_h: 0xf00000 [ 0.000000] hpet: T1: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.000000] hpet: T1 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.000000] hpet: T2: CFG_l: 0x0, CFG_h: 0xf00800 [ 0.000000] hpet: T2: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.000000] hpet: T2 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.000000] hpet: hpet_set_mode(348): [ 0.000000] hpet: ID: 0x8086a201, PERIOD: 0x429b17f [ 0.000000] hpet: CFG: 0x3, STATUS: 0x0 [ 0.000000] hpet: COUNTER_l: 0x577, COUNTER_h: 0x0 [ 0.000000] hpet: T0: CFG_l: 0x13c, CFG_h: 0xf00000 [ 0.000000] hpet: T0: CMP_l: 0xe4c0, CMP_h: 0x0 [ 0.000000] hpet: T0 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.000000] hpet: T1: CFG_l: 0x0, CFG_h: 0xf00000 [ 0.000000] hpet: T1: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.000000] hpet: T1 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.000000] hpet: T2: CFG_l: 0x0, CFG_h: 0xf00800 [ 0.000000] hpet: T2: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.000000] hpet: T2 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.000000] hpet clockevent registered [ 0.320995] hpet: hpet_msi_capability_lookup(621): [ 0.320995] hpet: ID: 0x8086a201, PERIOD: 0x429b17f [ 0.320995] hpet: CFG: 0x3, STATUS: 0x0 [ 0.320995] hpet: COUNTER_l: 0x63fff5, COUNTER_h: 0x0 [ 0.320995] hpet: T0: CFG_l: 0x138, CFG_h: 0xf00000 [ 0.320995] hpet: T0: CMP_l: 0x6484b0, CMP_h: 0x0 [ 0.320995] hpet: T0 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.320995] hpet: T1: CFG_l: 0x0, CFG_h: 0xf00000 [ 0.320995] hpet: T1: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.320995] hpet: T1 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.320995] hpet: T2: CFG_l: 0x0, CFG_h: 0xf00800 [ 0.320995] hpet: T2: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.320995] hpet: T2 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.320995] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 [ 0.320995] hpet0: 3 comparators, 64-bit 14.318180 MHz counter [ 0.322438] hpet: hpet_late_init(951): [ 0.322441] hpet: ID: 0x8086a201, PERIOD: 0x429b17f [ 0.322444] hpet: CFG: 0x3, STATUS: 0x0 [ 0.322447] hpet: COUNTER_l: 0x647301, COUNTER_h: 0x0 [ 0.322450] hpet: T0: CFG_l: 0x138, CFG_h: 0xf00000 [ 0.322454] hpet: T0: CMP_l: 0x6484b0, CMP_h: 0x0 [ 0.322457] hpet: T0 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.322460] hpet: T1: CFG_l: 0x0, CFG_h: 0xf00000 [ 0.322463] hpet: T1: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.322466] hpet: T1 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.322470] hpet: T2: CFG_l: 0x0, CFG_h: 0xf00800 [ 0.322473] hpet: T2: CMP_l: 0xc8ad01, CMP_h: 0x0 [ 0.322476] hpet: T2 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.610087] hpet: hpet_set_mode(348): [ 0.610090] hpet: ID: 0x8086a201, PERIOD: 0x429b17f [ 0.610093] hpet: CFG: 0x3, STATUS: 0x0 [ 0.610097] hpet: COUNTER_l: 0xa30ae4, COUNTER_h: 0x0 [ 0.610100] hpet: T0: CFG_l: 0x13c, CFG_h: 0xf00000 [ 0.610104] hpet: T0: CMP_l: 0xa3ea17, CMP_h: 0x0 [ 0.610107] hpet: T0 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.610110] hpet: T1: CFG_l: 0x0, CFG_h: 0xf00000 [ 0.610114] hpet: T1: CMP_l: 0xffffffff, CMP_h: 0x0 [ 0.610117] hpet: T1 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.610120] hpet: T2: CFG_l: 0x0, CFG_h: 0xf00800 [ 0.610124] hpet: T2: CMP_l: 0xc8ad01, CMP_h: 0x0 [ 0.610127] hpet: T2 ROUTE_l: 0x0, ROUTE_h: 0x0 [ 0.610154] Switching to clocksource hpet [ 1.034733] rtc0: alarms up to one month, y3k, 242 bytes nvram, hpet irqs > Thanks, > Venki > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at  http://vger.kernel.org/majordomo-info.html >