Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 30494
b: refs/heads/master
c: f8bf3c6
h: refs/heads/master
v: v3
  • Loading branch information
Vojtech Pavlik authored and Linus Torvalds committed Jun 26, 2006
1 parent 371d1fa commit fdca399
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 8 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 05ebb76109f302b949e745724bbf0f0634dba43f
refs/heads/master: f8bf3c65a962530821fa9a9b4bad43d8c7e13574
7 changes: 3 additions & 4 deletions trunk/arch/x86_64/kernel/apic.c
Original file line number Diff line number Diff line change
Expand Up @@ -983,15 +983,15 @@ void smp_apic_timer_interrupt(struct pt_regs *regs)
}

/*
* oem_force_hpet_timer -- force HPET mode for some boxes.
* apic_is_clustered_box() -- Check if we can expect good TSC
*
* Thus far, the major user of this is IBM's Summit2 series:
*
* Clustered boxes may have unsynced TSC problems if they are
* multi-chassis. Use available data to take a good guess.
* If in doubt, go HPET.
*/
__cpuinit int oem_force_hpet_timer(void)
__cpuinit int apic_is_clustered_box(void)
{
int i, clusters, zeros;
unsigned id;
Expand Down Expand Up @@ -1022,8 +1022,7 @@ __cpuinit int oem_force_hpet_timer(void)
}

/*
* If clusters > 2, then should be multi-chassis. Return 1 for HPET.
* Else return 0 to use TSC.
* If clusters > 2, then should be multi-chassis.
* May have to revisit this when multi-core + hyperthreaded CPUs come
* out, but AFAIK this will work even for them.
*/
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/x86_64/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -956,10 +956,10 @@ void __init time_init(void)
__cpuinit int unsynchronized_tsc(void)
{
#ifdef CONFIG_SMP
if (oem_force_hpet_timer())
if (apic_is_clustered_box())
return 1;
/* Intel systems are normally all synchronized. Exceptions
are handled in the OEM check above. */
are handled in the check above. */
if (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL)
return 0;
#endif
Expand Down
2 changes: 1 addition & 1 deletion trunk/include/asm-x86_64/hpet.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@

extern int is_hpet_enabled(void);
extern int hpet_rtc_timer_init(void);
extern int oem_force_hpet_timer(void);
extern int apic_is_clustered_box(void);

extern int hpet_use_timer;

Expand Down

0 comments on commit fdca399

Please sign in to comment.