Merge remote-tracking branches 'regulator/topic/act8865', 'regulator/topic/arizona...
[cascardo/linux.git] / drivers / edac / amd64_edac.c
index 17638d7..5907c17 100644 (file)
@@ -2174,14 +2174,20 @@ static void __log_bus_error(struct mem_ctl_info *mci, struct err_info *err,
 
 static inline void decode_bus_error(int node_id, struct mce *m)
 {
-       struct mem_ctl_info *mci = mcis[node_id];
-       struct amd64_pvt *pvt = mci->pvt_info;
+       struct mem_ctl_info *mci;
+       struct amd64_pvt *pvt;
        u8 ecc_type = (m->status >> 45) & 0x3;
        u8 xec = XEC(m->status, 0x1f);
        u16 ec = EC(m->status);
        u64 sys_addr;
        struct err_info err;
 
+       mci = edac_mc_find(node_id);
+       if (!mci)
+               return;
+
+       pvt = mci->pvt_info;
+
        /* Bail out early if this was an 'observed' error */
        if (PP(ec) == NBSL_PP_OBS)
                return;