aboutsummaryrefslogtreecommitdiff
path: root/core/cpu.c
diff options
context:
space:
mode:
authorGavin Shan <gwshan@linux.vnet.ibm.com>2016-06-10 15:03:37 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-06-14 16:00:16 +1000
commitbe7780911564db1b77f43c8e12447ff026947db3 (patch)
tree4a1b991034f627c5351fe6fa6185149d7faeb073 /core/cpu.c
parentc6a49d88e2f45ecdd969c7dfebdccc44ffcbf5fc (diff)
downloadskiboot-be7780911564db1b77f43c8e12447ff026947db3.zip
skiboot-be7780911564db1b77f43c8e12447ff026947db3.tar.gz
skiboot-be7780911564db1b77f43c8e12447ff026947db3.tar.bz2
core/cpu: Introduce DEBUG_SERIALIZE_CPU_JOBS
Currently, the PHB reset and PCI enumeration are done concurrently on multiple CPU cores. The output messages are interleaved and not readable enough. This adds a option to do the jobs in serialized fashion for debugging purpose only. The serialized mode should be always disabled in field. Suggested-by: Stewart Smith <stewart@linux.vnet.ibm.com> Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/cpu.c')
-rw-r--r--core/cpu.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/core/cpu.c b/core/cpu.c
index 4ae5e66..b5a3614 100644
--- a/core/cpu.c
+++ b/core/cpu.c
@@ -89,6 +89,11 @@ struct cpu_job *__cpu_queue_job(struct cpu_thread *cpu,
{
struct cpu_job *job;
+#ifdef DEBUG_SERIALIZE_CPU_JOBS
+ if (cpu == NULL)
+ cpu = this_cpu();
+#endif
+
if (cpu && !cpu_is_available(cpu)) {
prerror("CPU: Tried to queue job on unavailable CPU 0x%04x\n",
cpu->pir);