1. 02 Oct, 2009 4 commits
    • Arjan van de Ven's avatar
      x86: Simplify bound checks in the MTRR code · 11879ba5
      Arjan van de Ven authored
      The current bound checks for copy_from_user in the MTRR driver are
      not as obvious as they could be, and gcc agrees with that.
      
      This patch simplifies the boundary checks to the point that gcc can
      now prove to itself that the copy_from_user() is never going past
      its bounds.
      Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      LKML-Reference: <20090926205150.30797709@infradead.org>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      11879ba5
    • Borislav Petkov's avatar
      x86: EDAC: carve out AMD MCE decoding logic · 0d18b2e3
      Borislav Petkov authored
      This converts the MCE decoding logic into a standalone config
      option which can be built-in or a module, the first one being the
      default for MCEs happening early on in the boot process.
      
      This, beyond being separated in a cleaner way, also saves RAM by
      making the decoding logic modular.
      Signed-off-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Andi Kleen <andi@firstfloor.org>
      LKML-Reference: <20091002133148.GD28682@aftab>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0d18b2e3
    • Borislav Petkov's avatar
      initcalls: Add early_initcall() for modules · 329bd411
      Borislav Petkov authored
      Complete the early_initcall() API by making it available in modules
      too. To be used by the EDAC/MCE code.
      Signed-off-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
      Acked-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Cc: Andi Kleen <andi@firstfloor.org>
      LKML-Reference: <20091002132321.GC28682@aftab>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      329bd411
    • Ingo Molnar's avatar
      x86: EDAC: MCE: Fix MCE decoding callback logic · f436f8bb
      Ingo Molnar authored
      Make decoding of MCEs happen only on AMD hardware by registering a
      non-default callback only on CPU families which support it.
      
      While looking at the interaction of decode_mce() with the other MCE
      code i also noticed a few other things and made the following
      cleanups/fixes:
      
       - Fixed the mce_decode() weak alias - a weak alias is really not
         good here, it should be a proper callback. A weak alias will be
         overriden if a piece of code is built into the kernel - not
         good, obviously.
      
       - The patch initializes the callback on AMD family 10h and 11h.
      
       - Added the more correct fallback printk of:
      
      	No support for human readable MCE decoding on this CPU type.
      	Transcribe the message and run it through 'mcelog --ascii' to decode.
      
         On CPUs that dont have a decoder.
      
       - Made the surrounding code more readable.
      
      Note that the callback allows us to have a default fallback -
      without having to check the CPU versions during the printout
      itself. When an EDAC module registers itself, it can install the
      decode-print function.
      
      (there's no unregister needed as this is core code.)
      
      version -v2 by Borislav Petkov:
      
       - add K8 to the set of supported CPUs
      
       - always build in edac_mce_amd since we use an early_initcall now
      
       - fix checkpatch warnings
      Signed-off-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Andi Kleen <andi@firstfloor.org>
      LKML-Reference: <20091001141432.GA11410@aftab>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      f436f8bb
  2. 01 Oct, 2009 6 commits
  3. 30 Sep, 2009 30 commits