Skip to content

Commit

Permalink
rasdaemon: Identify the DIe Number in multidie system
Browse files Browse the repository at this point in the history
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 <muralidhara.mk@amd.com>
  • Loading branch information
Muralidhara M K authored and Avadhut Naik committed Aug 25, 2023
1 parent 720e734 commit 285ee21
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions mce-amd-smca.c
Original file line number Diff line number Diff line change
Expand Up @@ -935,10 +935,15 @@ void decode_smca_error(struct mce_event *e, struct mce_priv *m)
xec);

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

if (bank_type == SMCA_UMC_V2 && xec == 0) {
Expand Down

0 comments on commit 285ee21

Please sign in to comment.