25 Nov, 2014

1 commit


05 Nov, 2014

1 commit

  • By popular demand, enable amd64_edac on 32-bit too.

    Boris:
    - update Kconfig text.
    - add a warning on load which states that 32-bit configurations are unsupported.

    Signed-off-by: Tomasz Pala
    Link: http://lkml.kernel.org/r/20141102102212.GA7034@polanet.pl
    Signed-off-by: Borislav Petkov

    Tomasz Pala
     

05 Sep, 2014

1 commit

  • This patch adds support for the CycloneV and ArriaV SDRAM controllers.
    Correction and reporting of SBEs, Panic on DBEs.

    There was a discussion thread on whether this driver should be an mfd driver
    or just make use of syscon, which is already a mfd. Ultimately, the
    decision to use a simple syscon interface was reached.[1]

    [1] https://lkml.org/lkml/2014/7/30/514

    [dinguyen] Fixed Kconfig to have EDAC_ALTERA_MC as a tristate to prevent a
    build failure for allmodconfig.

    Signed-off-by: Thor Thayer
    Acked-by: Borislav Petkov
    [dinguyen] cleaned up commit message
    Signed-off-by: Dinh Nguyen

    Thor Thayer
     

16 Aug, 2014

1 commit

  • Pull EDAC updates from Mauro Carvalho Chehab.

    * 'linux_next' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac:
    sb_edac: add support for Haswell based systems
    sb_edac: Fix mix tab/spaces alignments
    edac: add DDR4 and RDDR4
    sb_edac: remove bogus assumption on mc ordering
    sb_edac: make minimal use of channel_mask
    sb_edac: fix socket detection on Ivy Bridge controllers
    sb_edac: update Kconfig description
    sb_edac: search devices using product id
    sb_edac: make RIR limit retrieval per model
    sb_edac: make node id retrieval per model
    sb_edac: make memory type detection per memory controller

    Linus Torvalds
     

05 Aug, 2014

1 commit

  • Pull RAS updates from Ingo Molnar:
    "The main changes in this cycle are:

    - RAS tracing/events infrastructure, by Gong Chen.

    - Various generalizations of the APEI code to make it available to
    non-x86 architectures, by Tomasz Nowicki"

    * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/ras: Fix build warnings in
    acpi, apei, ghes: Factor out ioremap virtual memory for IRQ and NMI context.
    acpi, apei, ghes: Make NMI error notification to be GHES architecture extension.
    apei, mce: Factor out APEI architecture specific MCE calls.
    RAS, extlog: Adjust init flow
    trace, eMCA: Add a knob to adjust where to save event log
    trace, RAS: Add eMCA trace event interface
    RAS, debugfs: Add debugfs interface for RAS subsystem
    CPER: Adjust code flow of some functions
    x86, MCE: Robustify mcheck_init_device
    trace, AER: Move trace into unified interface
    trace, RAS: Add basic RAS trace event
    x86, MCE: Kill CPU_POST_DEAD

    Linus Torvalds
     

04 Jul, 2014

1 commit

  • Add a driver for the E3-1200 series of Intel DRAM controllers, based on
    the following E3-1200 specs:

    http://www.intel.com/content/www/us/en/processors/xeon/xeon-e3-1200-family-vol-2-datasheet.html
    http://www.intel.com/content/www/us/en/processors/xeon/xeon-e3-1200v3-vol-2-datasheet.html

    I've tested this on bad memory hardware, and observed correlating bad
    reads and uncorrected memory errors as reported by the driver.

    Tested against:

    CPU E3-1270 v3 @ 3.50GHz : 8086:0c08 (haswell)
    CPU E3-1270 V2 @ 3.50GHz : 8086:0158 (ivy bridge)
    CPU E31270 @ 3.40GHz : 8086:0108 (sandy bridge)

    Signed-off-by: Jason Baron
    Link: http://lkml.kernel.org/r/95c83e80dd40b5377e8bb206285c5d95ac623872.1403818526.git.jbaron@akamai.com
    [ Boris: realign defines ]
    Signed-off-by: Borislav Petkov

    Jason Baron
     

27 Jun, 2014

2 commits


24 Jun, 2014

1 commit

  • To avoid confuision and conflict of usage for RAS related trace event,
    add an unified RAS trace event stub.

    Start a RAS subsystem menu which will be fleshed out in time, when more
    features get added to it.

    Signed-off-by: Chen, Gong
    Link: http://lkml.kernel.org/r/1402475691-30045-2-git-send-email-gong.chen@linux.intel.com
    Signed-off-by: Borislav Petkov
    Signed-off-by: Tony Luck

    Chen, Gong
     

14 Jul, 2013

1 commit

  • Pull MIPS updates from Ralf Baechle:
    "MIPS updates:

    - All the things that didn't make 3.10.
    - Removes the Windriver PPMC platform. Nobody will miss it.
    - Remove a workaround from kernel/irq/irqdomain.c which was there
    exclusivly for MIPS. Patch by Grant Likely.
    - More small improvments for the SEAD 3 platform
    - Improvments on the BMIPS / SMP support for the BCM63xx series.
    - Various cleanups of dead leftovers.
    - Platform support for the Cavium Octeon-based EdgeRouter Lite.

    Two large KVM patchsets didn't make it for this pull request because
    their respective authors are vacationing"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (124 commits)
    MIPS: Kconfig: Add missing MODULES dependency to VPE_LOADER
    MIPS: BCM63xx: CLK: Add dummy clk_{set,round}_rate() functions
    MIPS: SEAD3: Disable L2 cache on SEAD-3.
    MIPS: BCM63xx: Enable second core SMP on BCM6328 if available
    MIPS: BCM63xx: Add SMP support to prom.c
    MIPS: define write{b,w,l,q}_relaxed
    MIPS: Expose missing pci_io{map,unmap} declarations
    MIPS: Malta: Update GCMP detection.
    Revert "MIPS: make CAC_ADDR and UNCAC_ADDR account for PHYS_OFFSET"
    MIPS: APSP: Remove
    SSB: Kconfig: Amend SSB_EMBEDDED dependencies
    MIPS: microMIPS: Fix improper definition of ISA exception bit.
    MIPS: Don't try to decode microMIPS branch instructions where they cannot exist.
    MIPS: Declare emulate_load_store_microMIPS as a static function.
    MIPS: Fix typos and cleanup comment
    MIPS: Cleanup indentation and whitespace
    MIPS: BMIPS: support booting from physical CPU other than 0
    MIPS: Only set cpu_has_mmips if SYS_SUPPORTS_MICROMIPS
    MIPS: GIC: Fix gic_set_affinity infinite loop
    MIPS: Don't save/restore OCTEON wide multiplier state on syscalls.
    ...

    Linus Torvalds
     

11 Jun, 2013

1 commit

  • CAVIUM_OCTEON_SOC most place we used to use CPU_CAVIUM_OCTEON. This
    allows us to CPU_CAVIUM_OCTEON in places where we have no OCTEON SOC.

    Remove CAVIUM_OCTEON_SIMULATOR as it doesn't really do anything, we can
    get the same configuration with CAVIUM_OCTEON_SOC.

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Cc: linux-ide@vger.kernel.org
    Cc: linux-edac@vger.kernel.org
    Cc: linux-i2c@vger.kernel.org
    Cc: netdev@vger.kernel.org
    Cc: spi-devel-general@lists.sourceforge.net
    Cc: devel@driverdev.osuosl.org
    Cc: linux-usb@vger.kernel.org
    Acked-by: Greg Kroah-Hartman
    Acked-by: Wolfram Sang
    Acked-by: Mauro Carvalho Chehab
    Patchwork: https://patchwork.linux-mips.org/patch/5295/
    Signed-off-by: Ralf Baechle

    David Daney
     

04 Jun, 2013

1 commit

  • Ever since commit 45f035ab9b8f ("CONFIG_HOTPLUG should be always on"),
    it has been basically impossible to build a kernel with CONFIG_HOTPLUG
    turned off. Remove all the remaining references to it.

    Cc: Russell King
    Cc: Doug Thompson
    Cc: Bjorn Helgaas
    Cc: Steven Whitehouse
    Cc: Arnd Bergmann
    Cc: Pavel Machek
    Cc: "Rafael J. Wysocki"
    Cc: Andrew Morton
    Signed-off-by: Stephen Rothwell
    Acked-by: Mauro Carvalho Chehab
    Acked-by: Hans Verkuil
    Signed-off-by: Greg Kroah-Hartman

    Stephen Rothwell
     

01 Mar, 2013

1 commit

  • Pull EDAC fixes and ghes-edac from Mauro Carvalho Chehab:
    "For:

    - Some fixes at edac drivers (i7core_edac, sb_edac, i3200_edac);
    - error injection support for i5100, when EDAC debug is enabled;
    - fix edac when it is loaded builtin (early init for the subsystem);
    - a "Firmware First" EDAC driver, allowing ghes to report errors via
    EDAC (ghes-edac).

    With regards to ghes-edac, this fixes a longstanding BZ at Red Hat
    that happens with Nehalem and Sandy Bridge CPUs: when both GHES and
    i7core_edac or sb_edac are running, the error reports are
    unpredictable, as both BIOS and OS race to access the registers. With
    ghes-edac, the EDAC core will refuse to register any other concurrent
    memory error driver.

    This patchset moves the ghes struct definitions to a separate header
    file (include/acpi/ghes.h) and adds 3 hooks at apei/ghes.c to
    register/unregister and to report errors via ghes-edac. Those changes
    were acked by ghes driver maintainer (Huang)."

    * 'linux_next' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac: (30 commits)
    i5100_edac: convert to use simple_open()
    ghes_edac: fix to use list_for_each_entry_safe() when delete list items
    ghes_edac: Fix RAS tracing
    ghes_edac: Make it compliant with UEFI spec 2.3.1
    ghes_edac: Improve driver's printk messages
    ghes_edac: Don't credit the same memory dimm twice
    ghes_edac: do a better job of filling EDAC DIMM info
    ghes_edac: add support for reporting errors via EDAC
    ghes_edac: Register at EDAC core the BIOS report
    ghes: add the needed hooks for EDAC error report
    ghes: move structures/enum to a header file
    edac: add support for error type "Info"
    edac: add support for raw error reports
    edac: reduce stack pressure by using a pre-allocated buffer
    edac: lock module owner to avoid error report conflicts
    edac: remove proc_name from mci structure
    edac: add a new memory layer type
    edac: initialize the core earlier
    edac: better report error conditions in debug mode
    i5100_edac: Remove two checkpatch warnings
    ...

    Linus Torvalds
     

26 Feb, 2013

1 commit

  • Register GHES at EDAC MC core, in order to avoid other
    drivers to also handle errors and mangle with error data.

    The edac core will warrant that just one driver will be used,
    so the first one to register (BIOS first) will be the one that
    will be reporting the hardware errors.

    For now, the EDAC driver does nothing but to register at the
    EDAC core, preventing the hardware-driven mechanism to
    interfere with GHES.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

18 Jan, 2013

1 commit

  • The CONFIG_EXPERIMENTAL config item has not carried much meaning for a
    while now and is almost always enabled by default. As agreed during the
    Linux kernel summit, remove it from any "depends on" lines in Kconfigs.

    Acked-by: Mauro Carvalho Chehab
    Signed-off-by: Kees Cook
    Signed-off-by: Greg Kroah-Hartman

    Kees Cook
     

08 Jan, 2013

1 commit

  • After f65aad41772f("MIPS: Cavium: Add EDAC support."), when entering
    the "Device Drivers" toplevel menu in menuconfig, the suboptions behind
    EDAC appeared merged with the rest of the device drivers types. This was
    because the menuconfig option EDAC is querying an EDAC_SUPPORT Kconfig
    bool which was defined after the menu definition.

    When pushing EDAC_SUPPORT up, before the menu definition, the variable
    is defined earlier and the above menuconfig artifact doesn't happen.

    Drop a useless menuconfig comment while at it.

    Cc: Ralf Baechle
    Signed-off-by: Borislav Petkov

    Borislav Petkov
     

15 Dec, 2012

1 commit

  • Pull MIPS updates from Ralf Baechle:
    "The MIPS bits for 3.8. This also includes a bunch fixes that were
    sitting in the linux-mips.org git tree for a long time. This pull
    request contains updates to several OCTEON drivers and the board
    support code for BCM47XX, BCM63XX, XLP, XLR, XLS, lantiq, Loongson1B,
    updates to the SSB bus support, MIPS kexec code and adds support for
    kdump.

    When pulling this, there are two expected merge conflicts in
    include/linux/bcma/bcma_driver_chipcommon.h which are trivial to
    resolve, just remove the conflict markers and keep both alternatives."

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (90 commits)
    MIPS: PMC-Sierra Yosemite: Remove support.
    VIDEO: Newport Fix console crashes
    MIPS: wrppmc: Fix build of PCI code.
    MIPS: IP22/IP28: Fix build of EISA code.
    MIPS: RB532: Fix build of prom code.
    MIPS: PowerTV: Fix build.
    MIPS: IP27: Correct fucked grammar in ops-bridge.c
    MIPS: Highmem: Fix build error if CONFIG_DEBUG_HIGHMEM is disabled
    MIPS: Fix potencial corruption
    MIPS: Fix for warning from FPU emulation code
    MIPS: Handle COP3 Unusable exception as COP1X for FP emulation
    MIPS: Fix poweroff failure when HOTPLUG_CPU configured.
    MIPS: MT: Fix build with CONFIG_UIDGID_STRICT_TYPE_CHECKS=y
    MIPS: Remove unused smvp.h
    MIPS/EDAC: Improve OCTEON EDAC support.
    MIPS: OCTEON: Add definitions for OCTEON memory contoller registers.
    MIPS: OCTEON: Add OCTEON family definitions to octeon-model.h
    ata: pata_octeon_cf: Use correct byte order for DMA in when built little-endian.
    MIPS/OCTEON/ata: Convert pata_octeon_cf.c to use device tree.
    MIPS: Remove usage of CEVT_R4K_LIB config option.
    ...

    Linus Torvalds
     

12 Dec, 2012

1 commit

  • Drivers for EDAC on Cavium. Supported subsystems are:

    o CPU primary caches. These are parity protected only, so only error
    reporting.
    o Second level cache - ECC protected, provides SECDED.
    o Memory: ECC / SECDEC if used with suitable DRAM modules. The driver will
    will only initialize if ECC is enabled on a system so is safe to run on
    non-ECC memory.
    o PCI: Parity error reporting

    Since it is very hard to test this sort of code the implementation is very
    conservative and uses polling where possible for now.

    Signed-off-by: Ralf Baechle
    Reviewed-by: Borislav Petkov

    Ralf Baechle
     

28 Nov, 2012

1 commit


27 Jun, 2012

2 commits


12 Jun, 2012

1 commit

  • The old EDAC API is broken. It only works fine for systems manufatured
    before 2005 and for AMD 64. The reason is that it forces all memory
    controller drivers to discover rank info.

    Also, it doesn't allow grouping the several ranks into a DIMM.

    So, what almost all modern drivers do is to create a fake virtual-rank
    information, and use it to cheat the EDAC core to accept the driver.

    While this works if the user has enough time to discover what DIMM slot
    corresponds to each "virtual-rank" information, it prevents EDAC usage
    for users with less available time. It also makes life hard for vendors
    that may want to provide a table with their motherboards to the userspace
    tool (edac-utils) as each driver has its own logic for the virtual
    mapping.

    So, the old API should be removed, in favor of a more flexible API that
    allows newer drivers to not lie to the EDAC core.

    Reviewed-by: Aristeu Rozanski
    Cc: Doug Thompson
    Cc: Borislav Petkov
    Cc: Randy Dunlap
    Cc: Josh Boyer
    Cc: Hui Wang
    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

22 Mar, 2012

2 commits

  • This driver needs to access PCIe Extended Configuration Space
    Registers (0x100~0xfff), to correctly access those registers, we need
    to enable PCI_MMCONFIG option. Since this option is not enabled for
    X86_64 by default, we let the driver depend on it to prevent users
    forgetting to enable this option.

    Signed-off-by: Hui Wang
    Signed-off-by: Mauro Carvalho Chehab

    Hui Wang
     
  • As reported by Josh Boyer :
    > drivers/edac/sb_edac.c: In function 'get_memory_error_data':
    > drivers/edac/sb_edac.c:861:2: warning: left shift count >= width of type
    > [enabled by default]
    >
    > ERROR: "__udivdi3" [drivers/edac/sb_edac.ko] undefined!
    > make[1]: *** [__modpost] Error 1
    > make: *** [modules] Error 2

    PS.: compile-tested only

    Reported-by: Josh Boyer
    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

04 Nov, 2011

1 commit

  • The sb_edac driver is marginally useful on a 32-bit kernel, and
    currently has 64-bit divide compile errors when building that config.
    For now, make this build on only for 64-bit kernels.

    Signed-off-by: Josh Boyer
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Linus Torvalds

    Josh Boyer
     

01 Nov, 2011

4 commits


11 Aug, 2011

2 commits

  • This reverts commit af9d220bac41dc3201893e1601cc7c44f7da4498.

    It turns out that one was meant to be applied on top of the edac.git
    tree in -next that has more i7core_edac changes, but that wasn't clear
    in the original email.

    Reported-by: Stephen Rothwell
    Acked-by: Borislav Petkov
    Cc: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Both AMD and Intel i7 EDAC drivers use MCE features and are thus
    dependent of this functionality present in the kernel. Express this in
    Kconfig so that randconfig builds don't break.

    Reported-by: Randy Dunlap
    Signed-off-by: Borislav Petkov
    Acked-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Borislav Petkov
     

31 Mar, 2011

1 commit


11 Mar, 2011

1 commit


07 Jan, 2011

1 commit


25 Oct, 2010

1 commit

  • * 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/edac: (25 commits)
    i7300_edac: Properly initialize per-csrow memory size
    V4L/DVB: i7300_edac: better initialize page counts
    MAINTAINERS: Add maintainer for i7300-edac driver
    i7300-edac: CodingStyle cleanup
    i7300_edac: Improve comments
    i7300_edac: Cleanup: reorganize the file contents
    i7300_edac: Properly detect channel on CE errors
    i7300_edac: enrich FBD error info for corrected errors
    i7300_edac: enrich FBD error info for fatal errors
    i7300_edac: pre-allocate a buffer used to prepare err messages
    i7300_edac: Fix MTR x4/x8 detection logic
    i7300_edac: Make the debug messages coherent with the others
    i7300_edac: Cleanup: remove get_error_info logic
    i7300_edac: Add a code to cleanup error registers
    i7300_edac: Add support for reporting FBD errors
    i7300_edac: Properly detect the type of error correction
    i7300_edac: Detect if the device is on single mode
    i7300_edac: Adds detection for enhanced scrub mode on x8
    i7300_edac: Clear the error bit after reading
    i7300_edac: Add error detection code for global errors
    ...

    Linus Torvalds
     

22 Oct, 2010

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: (21 commits)
    EDAC, MCE: Fix shift warning on 32-bit
    EDAC, MCE: Add a BIT_64() macro
    EDAC, MCE: Enable MCE decoding on F12h
    EDAC, MCE: Add F12h NB MCE decoder
    EDAC, MCE: Add F12h IC MCE decoder
    EDAC, MCE: Add F12h DC MCE decoder
    EDAC, MCE: Add support for F11h MCEs
    EDAC, MCE: Enable MCE decoding on F14h
    EDAC, MCE: Fix FR MCEs decoding
    EDAC, MCE: Complete NB MCE decoders
    EDAC, MCE: Warn about LS MCEs on F14h
    EDAC, MCE: Adjust IC decoders to F14h
    EDAC, MCE: Adjust DC decoders to F14h
    EDAC, MCE: Rename files
    EDAC, MCE: Rework MCE injection
    EDAC: Export edac sysfs class to users.
    EDAC, MCE: Pass complete MCE info to decoders
    EDAC, MCE: Sanitize error codes
    EDAC, MCE: Remove unused function parameter
    EDAC, MCE: Add HW_ERR prefix
    ...

    Linus Torvalds
     

21 Oct, 2010

1 commit

  • Add sysfs injection facilities for testing of the MCE decoding code.
    Remove large parts of amd64_edac_dbg.c, as a result, which did only
    NB MCE injection anyway and the new injection code supports that
    functionality already.

    Add an injection module so that MCE decoding code in production kernels
    like those in RHEL and SLES can be tested.

    Signed-off-by: Borislav Petkov

    Borislav Petkov
     

21 Sep, 2010

1 commit


31 Aug, 2010

1 commit


03 Aug, 2010

1 commit