1. 26 Jun, 2006 2 commits
  2. 31 May, 2006 1 commit
    • Robert Hentosh's avatar
      [PATCH] x86_64: Fix off by one in bad_addr checking in find_e820_area · 7ca97c61
      Robert Hentosh authored
      From: Robert Hentosh <robert_hentosh@dell.com>
      Actually, we just stumbled on a different bug found in find_e820_area() in
      e820.c.  The following code does not handle the edge condition correctly:
         while (bad_addr(&addr, size) && addr+size < ei->addr + ei->size)
         last = addr + size;
         if ( last > ei->addr + ei->size )
      The second statement in the while loop needs to be a <= b so that it is the
      logical negavite of the if (a > b) outside it. It needs to read:
         while (bad_addr(&addr, size) && addr+size <= ei->addr + ei->size)
      In the case that failed bad_addr was returning an address that is exactly size
      bellow the end of the e820 range.
      AK: Again together with the earlier avoid edma fix this fixes
      boot on a Dell PE6850/16GB
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  3. 08 May, 2006 1 commit
    • Andi Kleen's avatar
      [PATCH] x86_64: Avoid EBDA area in early boot allocator · ac71d12c
      Andi Kleen authored
      Based on analysis&patch from Robert Hentosch
      Observed on a Dell PE6850 with 16GB
      The problem occurs very early on, when the kernel allocates space for the
      temporary memory map called bootmap. The bootmap overlaps the EBDA region.
      EBDA region is not historically reserved in the e820 mapping. When the
      bootmap is freed it marks the EBDA region as usable.
      If you notice in setup.c there is already code to work around the EBDA
      in reserve_ebda_region(), this check however occurs after the bootmap
      is allocated and doesn't prevent the bootmap from using this range.
      AK: I redid the original patch. Thanks also to Jan Beulich for
      spotting some mistakes.
      Cc: Robert_Hentosch@dell.com
      Cc: jbeulich@novell.com
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  4. 09 Apr, 2006 3 commits
  5. 10 Jan, 2006 1 commit
  6. 15 Nov, 2005 1 commit
  7. 17 Sep, 2005 1 commit
  8. 13 Sep, 2005 1 commit
  9. 12 Sep, 2005 1 commit
  10. 09 Sep, 2005 1 commit
    • Daniel Ritz's avatar
      [PATCH] Update PCI IOMEM allocation start · f0eca962
      Daniel Ritz authored
      This fixes the problem with "Averatec 6240 pcmcia_socket0: unable to
      apply power", which was due to the CardBus IOMEM register region being
      allocated at an address that was actually inside the RAM window that had
      been reserved for video frame-buffers in an UMA setup.
      The BIOS _should_ have marked that region reserved in the e820 memory
      descriptor tables, but did not.
      It is fixed by rounding up the default starting address of PCI memory
      allocations, so that we leave a bigger gap after the final known memory
      location.  The amount of rounding depends on how big the unused memory
      gap is that we can allocate IOMEM from.
      Based on example code by Linus.
      Acked-by: default avatarGreg KH <greg@kroah.com>
      Acked-by: default avatarIvan Kokshaysky <ink@jurassic.park.msu.ru>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  11. 07 Sep, 2005 1 commit
  12. 27 Aug, 2005 1 commit
    • Andi Kleen's avatar
      [PATCH] x86_64: Tell VM about holes in nodes · 485761bd
      Andi Kleen authored
      Some nodes can have large holes on x86-64.
      This fixes problems with the VM allowing too many dirty pages because it
      overestimates the number of available RAM in a node.  In extreme cases you
      can end up with all RAM filled with dirty pages which can lead to deadlocks
      and other nasty behaviour.
      This patch just tells the VM about the known holes from e820.  Reserved
      (like the kernel text or mem_map) is still not taken into account, but that
      should be only a few percent error now.
      Small detail is that the flat setup uses the NUMA free_area_init_node() now
      too because it offers more flexibility.
      (akpm: lotsa thanks to Martin for working this problem out)
      Cc: Martin Bligh <mbligh@mbligh.org>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  13. 25 Jun, 2005 2 commits
  14. 01 May, 2005 1 commit
  15. 16 Apr, 2005 2 commits
    • Andi Kleen's avatar
      [PATCH] x86_64: Port over e820 gap detection from i386 · a1e97782
      Andi Kleen authored
      Look for gaps in the e820 memory map to put PCI resources in.
      This hopefully fixes problems with the PCI code assigning 32bit BARs MMIO
      resources which are >32bit.
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    • Linus Torvalds's avatar
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds authored
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      Let it rip!