Skip to content

Commit 285ee21

Browse files
Muralidhara M KAvadhut Naik
authored andcommitted
rasdaemon: Identify the DIe Number in multidie system
Some AMD systems have 4 dies in each socket and Die ID represents whether the error occured on cpu die or gpu die. Also, respective Die used for FRU identification. Signed-off-by: Muralidhara M K <[email protected]>
1 parent 720e734 commit 285ee21

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

mce-amd-smca.c

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -935,10 +935,15 @@ void decode_smca_error(struct mce_event *e, struct mce_priv *m)
935935
xec);
936936

937937
if ((bank_type == SMCA_UMC || bank_type == SMCA_UMC_QUIRK) && xec == 0) {
938-
channel = find_umc_channel(e);
939-
csrow = e->synd & 0x7; /* Bit 0, 1 ,2 */
940-
mce_snprintf(e->mc_location, "memory_channel=%d,csrow=%d",
941-
channel, csrow);
938+
if ((m->family == 0x19) && (m->model >= 0x90 && m->model <= 0x9f)) {
939+
/* MCA_IPID[InstanceIdHi] give the AMD Node Die ID */
940+
mce_snprintf(e->mc_location, "memory_die_id=%d", mcatype_instancehi / 4);
941+
} else {
942+
channel = find_umc_channel(e);
943+
csrow = e->synd & 0x7; /* Bit 0, 1 ,2 */
944+
mce_snprintf(e->mc_location, "memory_channel=%d,csrow=%d",
945+
channel, csrow);
946+
}
942947
}
943948

944949
if (bank_type == SMCA_UMC_V2 && xec == 0) {

0 commit comments

Comments
 (0)