diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-02-28 23:42:33 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-02-28 23:42:33 -0500 |
commit | ad6c2c2eb34f234d6253292b9b3c047614fbfe7e (patch) | |
tree | 8ceb00db9874c09f3002b5ca579f1f9146b30a28 /drivers/edac/Kconfig | |
parent | 19cc90f58d4f2538b4cf5371681a057d2e5209f2 (diff) | |
parent | b0769891ba7baa53f270dc70d71934748beb4c5b (diff) |
Merge branch 'linux_next' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac
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
...
Diffstat (limited to 'drivers/edac/Kconfig')
-rw-r--r-- | drivers/edac/Kconfig | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig index acb709bfac0f..e443f2c1dfd1 100644 --- a/drivers/edac/Kconfig +++ b/drivers/edac/Kconfig | |||
@@ -80,6 +80,29 @@ config EDAC_MM_EDAC | |||
80 | occurred so that a particular failing memory module can be | 80 | occurred so that a particular failing memory module can be |
81 | replaced. If unsure, select 'Y'. | 81 | replaced. If unsure, select 'Y'. |
82 | 82 | ||
83 | config EDAC_GHES | ||
84 | bool "Output ACPI APEI/GHES BIOS detected errors via EDAC" | ||
85 | depends on ACPI_APEI_GHES && (EDAC_MM_EDAC=y) | ||
86 | default y | ||
87 | help | ||
88 | Not all machines support hardware-driven error report. Some of those | ||
89 | provide a BIOS-driven error report mechanism via ACPI, using the | ||
90 | APEI/GHES driver. By enabling this option, the error reports provided | ||
91 | by GHES are sent to userspace via the EDAC API. | ||
92 | |||
93 | When this option is enabled, it will disable the hardware-driven | ||
94 | mechanisms, if a GHES BIOS is detected, entering into the | ||
95 | "Firmware First" mode. | ||
96 | |||
97 | It should be noticed that keeping both GHES and a hardware-driven | ||
98 | error mechanism won't work well, as BIOS will race with OS, while | ||
99 | reading the error registers. So, if you want to not use "Firmware | ||
100 | first" GHES error mechanism, you should disable GHES either at | ||
101 | compilation time or by passing "ghes.disable=1" Kernel parameter | ||
102 | at boot time. | ||
103 | |||
104 | In doubt, say 'Y'. | ||
105 | |||
83 | config EDAC_AMD64 | 106 | config EDAC_AMD64 |
84 | tristate "AMD64 (Opteron, Athlon64) K8, F10h" | 107 | tristate "AMD64 (Opteron, Athlon64) K8, F10h" |
85 | depends on EDAC_MM_EDAC && AMD_NB && X86_64 && EDAC_DECODE_MCE | 108 | depends on EDAC_MM_EDAC && AMD_NB && X86_64 && EDAC_DECODE_MCE |