OSDN Git Service

EDAC/i10nm: Retrieve and print retry_rd_err_log registers
authorYouquan Song <youquan.song@intel.com>
Wed, 18 Aug 2021 17:57:01 +0000 (10:57 -0700)
committerTony Luck <tony.luck@intel.com>
Mon, 23 Aug 2021 17:35:36 +0000 (10:35 -0700)
commitcf4e6d52f58399c777276172ec250502e19d5e63
tree4222b4a09b82d5a5338fefa8e688b70e9dbbd54b
parent2294a7299f5e51667b841f63c6d69474491753fb
EDAC/i10nm: Retrieve and print retry_rd_err_log registers

Retrieve and print retry_rd_err_log registers like the earlier change:
commit e80634a75aba ("EDAC, skx: Retrieve and print retry_rd_err_log registers")

This is a little trickier than on Skylake because of potential
interference with BIOS use of the same registers. The default
behavior is to ignore these registers.

A module parameter retry_rd_err_log(default=0) controls the mode of operation:
- 0=off  : Default.
- 1=bios : Linux doesn't reset any control bits, but just reports values.
           This is "no harm" mode, but it may miss reporting some data.
- 2=linux: Linux tries to take control and resets mode bits,
           clears valid/UC bits after reading. This should be
           more reliable (especially if BIOS interference is reduced
           by disabling eMCA reporting mode in BIOS setup).

Co-developed-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
Signed-off-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
Signed-off-by: Youquan Song <youquan.song@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Link: https://lore.kernel.org/r/20210818175701.1611513-3-tony.luck@intel.com
drivers/edac/i10nm_base.c
drivers/edac/skx_base.c
drivers/edac/skx_common.c
drivers/edac/skx_common.h