1. 18 8月, 2008 9 次提交
  2. 17 8月, 2008 1 次提交
  3. 16 8月, 2008 7 次提交
  4. 15 8月, 2008 18 次提交
  5. 14 8月, 2008 5 次提交
    • T
      x86: hpet: workaround SB700 BIOS · a6825f1c
      Thomas Gleixner 提交于
      AMD SB700 based systems with spread spectrum enabled use a SMM based
      HPET emulation to provide proper frequency setting. The SMM code is
      initialized with the first HPET register access and takes some time to
      complete. During this time the config register reads 0xffffffff. We
      check for max. 1000 loops whether the config register reads a non
      0xffffffff value to make sure that HPET is up and running before we go
      further. A counting loop is safe, as the HPET access takes thousands
      of CPU cycles. On non SB700 based machines this check is only done
      once and has no side effects.
      
      Based on a quirk patch from: crane cai <crane.cai@amd.com>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      a6825f1c
    • Y
      x86: check bigsmp in smp_sanity_check instead of cpu_up · a58f03b0
      Yinghai Lu 提交于
      clear bits for cpu nr > 8.
      
      This allows us to boot the full range of possible CPUs that the
      supported APIC model will allow. Previously we'd hang or boot up
      with less than 8 CPUs.
      Signed-off-by: NYinghai Lu <yhlu.kernel@gmail.com>
      Tested-by: NJeff Chua <jeff.chua.linux@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      a58f03b0
    • Y
      x86: don't call e820_regiter_active_regions if out of range on node · 858f7747
      Yinghai Lu 提交于
      so we don't get warning on 32bit system with 64g RAM or more
      Signed-off-by: NYinghai Lu <yhlu.kernel@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      858f7747
    • M
      x86: resurrect proper handling of maxcpus= kernel option (v2) · 23b49c19
      Max Krasnyansky 提交于
      For some reason we had two parsers registered for maxcpus=. One in init/main.c
      and another in arch/x86/smpboot.c. So I nuked the one in arch/x86.
      
      Also 64-bit kernels used to handle maxcpus= as documented in
      Documentation/cpu-hotplug.txt. CPUs with 'id > maxcpus' are initialized
      but not booted. 32-bit version for some reason ignored them even though
      all the infrastructure for booting them later is there.
      
      In the current mainline both 64 and 32 bit versions are broken.
      This patch restores the correct behaviour. I've tested x86_64 version on
      4- and 8- way Core2 and 2-way Opteron based machines. Various config
      combinations SMP, !SMP, CPU_HOTPLUG, !CPU_HOTPLUG.
      Booted with maxcpus=1 and maxcpus=4, etc. Everything is working as expected.
      
      So far we've received two reports from different people confirming that 32-bit
      version also works fine, both on dual core laptops and 16way server machines.
      
      [v2: This version fixes visws breakage pointed out by Ingo.]
      Signed-off-by: NMax Krasnyansky <maxk@qualcomm.com>
      Cc: lizf@cn.fujitsu.com
      Cc: jeff.chua.linux@gmail.com
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      23b49c19
    • D
      sparc64: Fix cmdline_memory_size handling bugs. · f2b60794
      David S. Miller 提交于
      First, lmb_enforce_memory_limit() interprets it's argument
      (mostly, heh) as a size limit not an address limit.  So pass
      the raw cmdline_memory_size value into it.  And we don't
      need to check it against zero, lmb_enforce_memory_limit() does
      that for us.
      
      Next, free_initmem() needs special handling when the kernel
      command line trims the available memory.  The problem case is
      if the trimmed out memory is where the kernel image itself
      resides.
      
      When that memory is trimmed out, we don't add those physical
      ram areas to the sparsemem active ranges, amongst other things.
      Which means that this free_initmem() code will free up invalid
      page structs, resulting in either crashes or hangs.
      
      Just quick fix this by not freeing initmem at all if "mem="
      was given on the boot command line.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f2b60794