From f4a95d7e1dd50ff5e33a8b7bfa0a8acdf3432a46 Mon Sep 17 00:00:00 2001 From: Mahesh Salgaonkar Date: Thu, 31 May 2018 14:04:33 +0530 Subject: opal/hmi: Display correct chip id while printing NPU FIRs. HMIs for NPU xstops are broadcasted to all chips. All cores on all the chips receive HMI. HMI handler correctly identifies and extracts the NPU FIR details from affected chip, but while printing FIR data it prints chip id and location code details of this_cpu()->chip_id which may not be correct. This patch fixes this issue. CC: stable # v6.0+ Fixes: 7bcbc78c ("Add location code to NPU2 HMI logging") Signed-off-by: Mahesh Salgaonkar [stewart: add fixes and cc stable] Signed-off-by: Stewart Smith (cherry picked from commit fa82d360a73a5e52131d8a19e9fdb9d6e9c2eeb9) Signed-off-by: Stewart Smith --- core/hmi.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'core') diff --git a/core/hmi.c b/core/hmi.c index c0e2354..3bbdb2a 100644 --- a/core/hmi.c +++ b/core/hmi.c @@ -634,7 +634,7 @@ static void dump_scoms(int flat_chip_id, const char *unit, uint32_t *scoms, if (r != OPAL_SUCCESS) continue; prlog(PR_ERR, "%s: [Loc: %s] P:%d 0x%08x=0x%016llx\n", - unit, loc, this_cpu()->chip_id, *scoms, value); + unit, loc, flat_chip_id, *scoms, value); scoms++; } } @@ -691,13 +691,13 @@ static void find_npu2_checkstop_reason(int flat_chip_id, fatal_errors = npu2_fir & ~npu2_fir_mask & npu2_fir_action0 & npu2_fir_action1; if (fatal_errors) { - loc = chip_loc_code(this_cpu()->chip_id); + loc = chip_loc_code(flat_chip_id); if (!loc) loc = "Not Available"; prlog(PR_ERR, "NPU2: [Loc: %s] P:%d FIR#%d FIR 0x%016llx mask 0x%016llx\n", - loc, this_cpu()->chip_id, i, npu2_fir, npu2_fir_mask); + loc, flat_chip_id, i, npu2_fir, npu2_fir_mask); prlog(PR_ERR, "NPU2: [Loc: %s] P:%d ACTION0 0x%016llx, ACTION1 0x%016llx\n", - loc, this_cpu()->chip_id, npu2_fir_action0, npu2_fir_action1); + loc, flat_chip_id, npu2_fir_action0, npu2_fir_action1); total_errors++; } -- cgit v1.1