Skip to content

Commit 127b1ec

Browse files
vanderpop-jenkins
authored andcommitted
STOP: Release the PCB Atomic lock on aborted Stop 11 entry
Change-Id: If95f95933a4524c70d0d83d7b122eb64a0011588 Original-Change-Id: If11230c11e82f3a2ec2fe9fee16408374737b8f8 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39974 Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: AMIT KUMAR <akumar3@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
1 parent 387d0df commit 127b1ec

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_entry.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -716,6 +716,18 @@ p9_sgpe_stop_entry()
716716
if (l3_purge_aborted)
717717
{
718718
PK_TRACE_INF("Abort: L3 Purge Aborted");
719+
720+
PK_TRACE("Release cache PCB slave atomic lock");
721+
GPE_PUTSCOM(GPE_SCOM_ADDR_QUAD(EQ_QPPM_ATOMIC_LOCK, qloop), 0);
722+
GPE_GETSCOM(GPE_SCOM_ADDR_QUAD(EQ_QPPM_ATOMIC_LOCK, qloop), scom_data.value);
723+
724+
if (scom_data.words.upper & BIT32(0))
725+
{
726+
PK_TRACE_ERR("ERROR: Failed to Release Cache %d PCB Slave Atomic Lock. Register Content: %x",
727+
qloop, scom_data.words.upper);
728+
PK_PANIC(SGPE_STOP_EXIT_DROP_SLV_LOCK_FAILED);
729+
}
730+
719731
// For IPC reporting, taking aborted quad out of the list
720732
G_sgpe_stop_record.group.quad[VECTOR_ENTRY] &= ~BIT32(qloop);
721733
continue;

0 commit comments

Comments
 (0)