For system with large numbers of CPUs, the 'r' debugkey is unwieldy. Sibling
and core masks are a single block of adjacent bits, so are vastly shorter to
render with %pbl.
Before:
(XEN) CPU[00] nr_run=0, sort=157,
sibling=,,,,,,,0003,
core=,,,,,,,
(XEN) CPU[01] nr_run=0, sort=13750,
sibling=,,,,,,,0003,
core=,,,,,,,
(XEN) CPU[02] nr_run=0, sort=188,
sibling=,,,,,,,000c,
core=,,,,,,,
(XEN) CPU[03] nr_run=0, sort=13730,
sibling=,,,,,,,000c,
core=,,,,,,,
After:
(XEN) CPU[00] nr_run=0, sort=1169, sibling={0-1}, core={0-127}
(XEN) CPU[01] nr_run=0, sort=2488, sibling={0-1}, core={0-127}
(XEN) CPU[02] nr_run=0, sort=1210, sibling={2-3}, core={0-127}
(XEN) CPU[03] nr_run=0, sort=2476, sibling={2-3}, core={0-127}
Signed-off-by: Andrew Cooper
---
CC: Juergen Gross
CC: Dario Faggioli
CC: George Dunlap
4.13 nice-to-have. Not strictly required, but it is a low risk change which
improves diagnostics.
---
xen/common/sched_credit.c | 2 +-
xen/common/sched_credit2.c | 2 +-
xen/common/sched_null.c| 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/xen/common/sched_credit.c b/xen/common/sched_credit.c
index 645cdc5e9a..aa41a3301b 100644
--- a/xen/common/sched_credit.c
+++ b/xen/common/sched_credit.c
@@ -2065,7 +2065,7 @@ csched_dump_pcpu(const struct scheduler *ops, int cpu)
spc = CSCHED_PCPU(cpu);
runq = &spc->runq;
-printk("CPU[%02d] nr_run=%d, sort=%d, sibling=%*pb, core=%*pb\n",
+printk("CPU[%02d] nr_run=%d, sort=%d, sibling={%*pbl}, core={%*pbl}\n",
cpu, spc->nr_runnable, spc->runq_sort_last,
CPUMASK_PR(per_cpu(cpu_sibling_mask, cpu)),
CPUMASK_PR(per_cpu(cpu_core_mask, cpu)));
diff --git a/xen/common/sched_credit2.c b/xen/common/sched_credit2.c
index af58ee161d..f7c477053c 100644
--- a/xen/common/sched_credit2.c
+++ b/xen/common/sched_credit2.c
@@ -3658,7 +3658,7 @@ dump_pcpu(const struct scheduler *ops, int cpu)
struct csched2_private *prv = csched2_priv(ops);
struct csched2_unit *svc;
-printk("CPU[%02d] runq=%d, sibling=%*pb, core=%*pb\n",
+printk("CPU[%02d] runq=%d, sibling={%*pbl}, core={%*pbl}\n",
cpu, c2r(cpu),
CPUMASK_PR(per_cpu(cpu_sibling_mask, cpu)),
CPUMASK_PR(per_cpu(cpu_core_mask, cpu)));
diff --git a/xen/common/sched_null.c b/xen/common/sched_null.c
index da3fe29f21..3f3418c9b1 100644
--- a/xen/common/sched_null.c
+++ b/xen/common/sched_null.c
@@ -926,7 +926,7 @@ static void null_dump_pcpu(const struct scheduler *ops, int
cpu)
lock = pcpu_schedule_lock_irqsave(cpu, &flags);
-printk("CPU[%02d] sibling=%*pb, core=%*pb",
+printk("CPU[%02d] sibling={%*pbl}, core={%*pbl}",
cpu, CPUMASK_PR(per_cpu(cpu_sibling_mask, cpu)),
CPUMASK_PR(per_cpu(cpu_core_mask, cpu)));
if ( per_cpu(npc, cpu).unit != NULL )
--
2.11.0
___
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel