Messages in this thread | | | From | Robert Richter <> | Subject | [PATCH 00/19] EDAC: Rework edac_mc and ghes drivers | Date | Thu, 10 Oct 2019 20:25:01 +0000 |
| |
This patch set is a rework of the ghes_edac and edac_mc driver. It addresses issues found during code review and while working with the code. The changes include:
* improve function interfaces and data structures to decrease complexity such as number of function arguments, unused data, etc. (#1, #2, #6, #10, #12, #13),
* add helper functions and factor out code (#3, #8, #9, #14)
* fix style issues found by checkpatch (#4)
* improve code readability (#5, #7, #11)
* use of standard kernel macros (#15)
* code unification (#16, #17, #18)
* documentation updates (#19)
This series contains some patches that have been posted and reviewed earlier here:
https://lore.kernel.org/patchwork/cover/1093488/
Review comments have been addressed and the following changes have been made to those patches:
* rebased onto ras:edac-for-next (v5.4-rc1 based)
* reworded patch descriptions
* dropped hunk that only reorders code in "EDAC, ghes: Remove pvt->detail_location string"
* updated description for edac_get_dimm_by_index()
* updated description for edac_get_dimm()
* small style changes in "EDAC: Replace EDAC_DIMM_PTR() macro with edac_get_dimm() function"
* use unsigned type for dimm->idx to avoid need for negative range check
* fixed mci_for_each_dimm() loop in i5100_init_csrows()
* fixed off-by-one in mci_for_each_dimm()
Robert Richter (19): EDAC: Replace EDAC_DIMM_PTR() macro with edac_get_dimm() function EDAC: Remove EDAC_DIMM_OFF() macro EDAC: Introduce mci_for_each_dimm() iterator EDAC, mc: Do not BUG_ON() in edac_mc_alloc() EDAC, mc: Reduce indentation level in edac_mc_handle_error() EDAC, mc: Remove per layer counters EDAC, mc: Rename iterator variable to idx EDAC, mc: Split edac_mc_alloc() into smaller functions EDAC, mc: Reorder functions edac_mc_alloc*() EDAC, mc: Rework edac_raw_mc_handle_error() to use struct dimm_info EDAC: Remove misleading comment in struct edac_raw_error_desc EDAC: Store error type in struct edac_raw_error_desc EDAC, mc: Determine mci pointer from the error descriptor EDAC, mc: Create new function edac_inc_csrow() EDAC, ghes: Use standard kernel macros for page calculations EDAC, ghes: Fix grain calculation EDAC, ghes: Remove intermediate buffer pvt->detail_location EDAC, ghes: Unify trace_mc_event() code with edac_mc driver EDAC, Documentation: Describe CPER module definition and DIMM ranks
Documentation/admin-guide/ras.rst | 31 +- drivers/edac/edac_mc.c | 478 +++++++++++++++--------------- drivers/edac/edac_mc.h | 8 +- drivers/edac/edac_mc_sysfs.c | 65 ++-- drivers/edac/ghes_edac.c | 55 ++-- drivers/edac/i10nm_base.c | 3 +- drivers/edac/i3200_edac.c | 3 +- drivers/edac/i5000_edac.c | 5 +- drivers/edac/i5100_edac.c | 14 +- drivers/edac/i5400_edac.c | 3 +- drivers/edac/i7300_edac.c | 3 +- drivers/edac/i7core_edac.c | 3 +- drivers/edac/ie31200_edac.c | 7 +- drivers/edac/pnd2_edac.c | 4 +- drivers/edac/sb_edac.c | 2 +- drivers/edac/skx_base.c | 3 +- drivers/edac/ti_edac.c | 2 +- include/linux/edac.h | 153 +++++----- 18 files changed, 401 insertions(+), 441 deletions(-)
-- 2.20.1
| |