1. 12 9月, 2008 1 次提交
    • J
      x86: fix possible x86_64 and EFI regression · 0ad5bce7
      Jeremy Fitzhardinge 提交于
      Russ Anderson reported a boot crash with EFI and latest mainline:
      
       BIOS-e820: 00000000fffa0000 - 00000000fffac000 (reserved)
      Pid: 0, comm: swapper Not tainted 2.6.27-rc5-00100-gec0c15af-dirty #5
      
      Call Trace:
       [<ffffffff80849195>] early_idt_handler+0x55/0x69
       [<ffffffff80313e52>] __memcpy+0x12/0xa4
       [<ffffffff80859015>] efi_init+0xce/0x932
       [<ffffffff80869c83>] setup_early_serial8250_console+0x2d/0x36a
       [<ffffffff80238688>] __insert_resource+0x18/0xc8
       [<ffffffff8084f6de>] setup_arch+0x3a7/0x632
       [<ffffffff808499ed>] start_kernel+0x91/0x367
       [<ffffffff80849393>] x86_64_start_kernel+0xe3/0xe7
       [<ffffffff808492b0>] x86_64_start_kernel+0x0/0xe7
      
       RIP 0x10
      
      Such a crash is possible if the CPU in this system is a 64-bit
      processor which doesn't support NX (ie, old Intel P4 -based64-bit
      processors).
      
      Certainly, if we support such processors, then we should start with
      _PAGE_NX initially clear in __supported_pte_flags, and then set it once
      we've established that the processor does indeed support NX.  That will
      prevent early_ioremap - or anything else - from trying to set it.
      
      The simple fix is to simply call check_efer() earlier.
      Reported-by: NRuss Anderson <rja@sgi.com>
      Signed-off-by: NJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      0ad5bce7
  2. 22 8月, 2008 1 次提交
  3. 13 8月, 2008 1 次提交
    • M
      x86: fix 2 section mismatch warnings - find_and_reserve_crashkernel · 6b356022
      Marcin Slusarz 提交于
      WARNING: vmlinux.o(.text+0xcd1f): Section mismatch in reference from the function find_and_reserve_crashkernel() to the function .init.text:find_e820_area()
      The function find_and_reserve_crashkernel() references
      the function __init find_e820_area().
      This is often because find_and_reserve_crashkernel lacks a __init
      annotation or the annotation of find_e820_area is wrong.
      
      WARNING: vmlinux.o(.text+0xcd38): Section mismatch in reference from the function find_and_reserve_crashkernel() to the function .init.text:reserve_bootmem_generic()
      The function find_and_reserve_crashkernel() references
      the function __init reserve_bootmem_generic().
      This is often because find_and_reserve_crashkernel lacks a __init
      annotation or the annotation of reserve_bootmem_generic is wrong.
      
      find_and_reserve_crashkernel is called from __init function (reserve_crashkernel)
      and calls 2 __init functions (find_e820_area, reserve_bootmem_generic),
      so mark it __init
      Signed-off-by: NMarcin Slusarz <marcin.slusarz@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      6b356022
  4. 12 8月, 2008 1 次提交
  5. 09 8月, 2008 1 次提交
  6. 24 7月, 2008 1 次提交
  7. 22 7月, 2008 1 次提交
  8. 20 7月, 2008 2 次提交
  9. 19 7月, 2008 2 次提交
    • B
      x86: move dma32_reserve_bootmem() after reserve_crashkernel() · 91467bdf
      Bernhard Walle 提交于
      On a x86-64 machine (nothing special I could encounter) I had the problem that
      crashkernel reservation with the usual "64M@16M" failed. While debugging that,
      I encountered that dma32_reserve_bootmem() reserves a memory region which is in
      that area.
      
      Because dma32_reserve_bootmem() does not rely on a specific offset but
      crashkernel does, it makes sense to move the dma32_reserve_bootmem()
      reservation down a bit. I tested that patch and it works without problems. I
      don't see any negative effects of that move, but maybe I oversaw something ...
      
      While we strictly don't need that patch in 2.6.27 because we have the
      automatic, dynamic offset detection, it makes sense to also include it here
      because:
      
        - it's easier to get it in -stable then,
        - many people are still used to the 'crashkernel=...@16M' syntax,
        - not everybody may be using a reloatable kernel.
      Signed-off-by: NBernhard Walle <bwalle@suse.de>
      Cc: kexec@lists.infradead.org
      Cc: vgoyal@redhat.com
      Cc: akpm@linux-foundation.org
      Cc: Bernhard Walle <bwalle@suse.de>
      Cc: yhlu.kernel@gmail.com
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      91467bdf
    • A
      x86 setup.c: cleanup includes · 47129654
      Alexander Beregalov 提交于
      x86: remove double includes in setup.c
      Signed-off-by: NAlexander Beregalov <a.beregalov@gmail.com>
      Cc: yhlu.kernel@gmail.com
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      47129654
  10. 16 7月, 2008 2 次提交
  11. 13 7月, 2008 1 次提交
    • Y
      x86: fix numaq_tsc_disable calling · 3d88cca7
      Yinghai Lu 提交于
      got this on a test-system:
      
       calling  numaq_tsc_disable+0x0/0x39
       NUMAQ: disabling TSC
       initcall numaq_tsc_disable+0x0/0x39 returned 0 after 0 msecs
      
      that's because we should not be using arch_initcall to call numaq_tsc_disable.
      
      need to call it in setup_arch before time_init()/tsc_init()
      and call it in init_intel() to make the cpu feature bits right.
      Signed-off-by: NYinghai Lu <yhlu.kernel@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      3d88cca7
  12. 11 7月, 2008 3 次提交
  13. 09 7月, 2008 2 次提交
  14. 08 7月, 2008 21 次提交