summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/include/smp.h1
-rw-r--r--sys/powerpc/powerpc/mp_machdep.c8
2 files changed, 8 insertions, 1 deletions
diff --git a/sys/powerpc/include/smp.h b/sys/powerpc/include/smp.h
index 3929b8c..0e5ec16 100644
--- a/sys/powerpc/include/smp.h
+++ b/sys/powerpc/include/smp.h
@@ -35,6 +35,7 @@
#define IPI_PREEMPT 1
#define IPI_RENDEZVOUS 2
#define IPI_STOP 3
+#define IPI_STOP_HARD 3
#ifndef LOCORE
diff --git a/sys/powerpc/powerpc/mp_machdep.c b/sys/powerpc/powerpc/mp_machdep.c
index 2c6d11b..1ae7d6d 100644
--- a/sys/powerpc/powerpc/mp_machdep.c
+++ b/sys/powerpc/powerpc/mp_machdep.c
@@ -281,7 +281,13 @@ powerpc_ipi_handler(void *arg)
smp_rendezvous_action();
break;
case IPI_STOP:
- CTR1(KTR_SMP, "%s: IPI_STOP (stop)", __func__);
+
+ /*
+ * IPI_STOP_HARD is mapped to IPI_STOP so it is not
+ * necessary to add such case in the switch.
+ */
+ CTR1(KTR_SMP, "%s: IPI_STOP or IPI_STOP_HARD (stop)",
+ __func__);
self = PCPU_GET(cpumask);
savectx(PCPU_GET(curpcb));
atomic_set_int(&stopped_cpus, self);
OpenPOWER on IntegriCloud