Revert "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems"

This reverts commit 13a229abc2.

Quoth Andi:
  "After some consideration and feedback from various people it turns
   out this wasn't that good an idea.  It has some problems and needs
   more work.  Since it was only an optimization anyways it's best to
   just back it out again for now."

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Linus Torvalds 2006-02-27 20:41:56 -08:00
parent d4f0f122ec
commit 637029c6cb
3 changed files with 4 additions and 22 deletions

View File

@ -44,6 +44,9 @@ extern void __init clustered_apic_check(void);
extern int gsi_irq_sharing(int gsi);
#include <asm/proto.h>
static inline int acpi_madt_oem_check(char *oem_id, char *oem_table_id) { return 0; }
#else /* X86 */
#ifdef CONFIG_X86_LOCAL_APIC

View File

@ -962,14 +962,12 @@ void smp_apic_timer_interrupt(struct pt_regs *regs)
irq_exit();
}
int __initdata unsync_tsc_on_multicluster;
/*
* oem_force_hpet_timer -- force HPET mode for some boxes.
*
* Thus far, the major user of this is IBM's Summit2 series:
*
* Some clustered boxes may have unsynced TSC problems if they are
* 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.
*/
@ -979,11 +977,6 @@ __cpuinit int oem_force_hpet_timer(void)
unsigned id;
DECLARE_BITMAP(clustermap, NUM_APIC_CLUSTERS);
/* Only do this check on IBM machines - big Unisys systems
use multiple clusters too, but have synchronized TSC */
if (!unsync_tsc_on_multicluster)
return 0;
bitmap_zero(clustermap, NUM_APIC_CLUSTERS);
for (i = 0; i < NR_CPUS; i++) {

View File

@ -164,20 +164,6 @@ extern u8 x86_acpiid_to_apicid[];
extern int acpi_skip_timer_override;
extern int unsync_tsc_on_multicluster;
static inline int acpi_madt_oem_check(char *oem, char *productid)
{
/* Copied from i386. Probably has too many entries. */
if (!strncmp(oem, "IBM ENSW", 8) &&
(!strncmp(productid, "VIGIL SMP", 9)
|| !strncmp(productid, "EXA", 3)
|| !strncmp(productid, "RUTHLESS SMP", 12))) {
unsync_tsc_on_multicluster = 1;
}
return 0;
}
#endif /*__KERNEL__*/
#endif /*_ASM_ACPI_H*/