EDAC/skx_common: Delete duplicated and unreachable code
authorQiuxu Zhuo <qiuxu.zhuo@intel.com>
Fri, 13 Jan 2023 03:27:59 +0000 (11:27 +0800)
committerTony Luck <tony.luck@intel.com>
Wed, 25 Jan 2023 16:16:53 +0000 (08:16 -0800)
skx_mce_check_error() returns early if the error isn't from memory.
So when skx_mce_output_error() is invoked from skx_mce_check_error(),
it doesn't need to re-check whether the error is from memory. Delete
the duplicated and unreachable code from skx_mce_output_error().

Signed-off-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Link: https://lore.kernel.org/all/20230113032802.41752-1-qiuxu.zhuo@intel.com
drivers/edac/skx_common.c

index 5fdcb6d..fd8186f 100644 (file)
@@ -560,44 +560,28 @@ static void skx_mce_output_error(struct mem_ctl_info *mci,
                tp_event = HW_EVENT_ERR_CORRECTED;
        }
 
-       /*
-        * According to Intel Architecture spec vol 3B,
-        * Table 15-10 "IA32_MCi_Status [15:0] Compound Error Code Encoding"
-        * memory errors should fit one of these masks:
-        *      000f 0000 1mmm cccc (binary)
-        *      000f 0010 1mmm cccc (binary)    [RAM used as cache]
-        * where:
-        *      f = Correction Report Filtering Bit. If 1, subsequent errors
-        *          won't be shown
-        *      mmm = error type
-        *      cccc = channel
-        * If the mask doesn't match, report an error to the parsing logic
-        */
-       if (!((errcode & 0xef80) == 0x80 || (errcode & 0xef80) == 0x280)) {
-               optype = "Can't parse: it is not a mem";
-       } else {
-               switch (optypenum) {
-               case 0:
-                       optype = "generic undef request error";
-                       break;
-               case 1:
-                       optype = "memory read error";
-                       break;
-               case 2:
-                       optype = "memory write error";
-                       break;
-               case 3:
-                       optype = "addr/cmd error";
-                       break;
-               case 4:
-                       optype = "memory scrubbing error";
-                       scrub_err = true;
-                       break;
-               default:
-                       optype = "reserved";
-                       break;
-               }
+       switch (optypenum) {
+       case 0:
+               optype = "generic undef request error";
+               break;
+       case 1:
+               optype = "memory read error";
+               break;
+       case 2:
+               optype = "memory write error";
+               break;
+       case 3:
+               optype = "addr/cmd error";
+               break;
+       case 4:
+               optype = "memory scrubbing error";
+               scrub_err = true;
+               break;
+       default:
+               optype = "reserved";
+               break;
        }
+
        if (res->decoded_by_adxl) {
                len = snprintf(skx_msg, MSG_SIZE, "%s%s err_code:0x%04x:0x%04x %s",
                         overflow ? " OVERFLOW" : "",