diff options
author | Yue Du <daviddu@us.ibm.com> | 2017-03-15 11:29:04 -0500 |
---|---|---|
committer | Joshua Hunsberger <jahunsbe@us.ibm.com> | 2017-10-23 17:15:12 -0500 |
commit | 7778509972ad832915e3faca708ed4449ea7259d (patch) | |
tree | eb2c5ba44585673c5dac02192c07b038d863e403 /import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c | |
parent | 9805bd8b84bcf399afd313cee17db2ed062318f7 (diff) | |
download | talos-hcode-7778509972ad832915e3faca708ed4449ea7259d.tar.gz talos-hcode-7778509972ad832915e3faca708ed4449ea7259d.zip |
STOP: FIX phantom wakeup vs. wakeup_notify_select
1) sgpe check type2 and 3 on the same core
2) cme check if notify is truely set
3) sgpe check if notify is truely set during stop8 entry
4) FIX phantom wakeup vs. wakeup_notify_select
5) so 4) isnt good enough as phantom can be noticed
when notify = 1 or 0 (good type checker caught this)
instead of using truth table to completely
handle/detect unwanted cases.
Change-Id: I3df8326260ba505db7efb3bdee17cc8908bd13fc
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37975
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: ASHISH A. MORE <ashish.more@in.ibm.com>
Reviewed-by: Brian T. Vanderpool <vanderp@us.ibm.com>
Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Diffstat (limited to 'import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c')
-rw-r--r-- | import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c b/import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c index 95449527..3e16a0d7 100644 --- a/import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c +++ b/import/chips/p9/procedures/ppe_closed/cme/stop_cme/p9_cme_stop_irq_handlers.c @@ -41,8 +41,8 @@ void p9_cme_stop_spwu_handler(void* arg, PkIrqId irq) { MARK_TRAP(STOP_SPWU_HANDLER) - PK_TRACE_INF("SPWU Handler"); - PK_TRACE_DBG("SPWU Trigger %d", irq); + //PK_TRACE_INF("SPWU Handler"); + PK_TRACE_INF("SPWU Trigger %d", irq); PkMachineContext ctx; int sem_post = 0; @@ -118,8 +118,8 @@ void p9_cme_stop_exit_handler(void* arg, PkIrqId irq) { MARK_TRAP(STOP_EXIT_HANDLER) - PK_TRACE_INF("SX Handler"); - PK_TRACE_DBG("SX Trigger %d", irq); + //PK_TRACE_INF("SX Handler"); + PK_TRACE_INF("SX Trigger %d", irq); out32(CME_LCL_EIMR_OR, BITS32(12, 6) | BITS32(20, 2)); pk_semaphore_post((PkSemaphore*)arg); } @@ -130,8 +130,8 @@ void p9_cme_stop_enter_handler(void* arg, PkIrqId irq) { MARK_TRAP(STOP_ENTER_HANDLER) - PK_TRACE_INF("SE Handler"); - PK_TRACE_DBG("SE Trigger %d", irq); + //PK_TRACE_INF("SE Handler"); + PK_TRACE_INF("SE Trigger %d", irq); out32(CME_LCL_EIMR_OR, BITS32(12, 6) | BITS32(20, 2)); pk_semaphore_post((PkSemaphore*)arg); } |