summaryrefslogtreecommitdiff
path: root/xen/arch/x86/numa.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2015-09-23 11:13:21 +0200
committerJan Beulich <jbeulich@suse.com>2015-09-23 11:13:21 +0200
commit11964811d7ace3e6cda2442d6f9898688c282692 (patch)
tree09a9eb455876c5589e642261b0916af2f27e23d3 /xen/arch/x86/numa.c
parentc4b6bbe2240f5d3b22245bee9f4ceb3698e78ef9 (diff)
x86: shorten debug key 'u' output
... by grouping sequences of contiguous CPUs. Signed-off-by: Jan Beulich <jbeulich@suse.com> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Diffstat (limited to 'xen/arch/x86/numa.c')
-rw-r--r--xen/arch/x86/numa.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/xen/arch/x86/numa.c b/xen/arch/x86/numa.c
index 132d694213..3041b247da 100644
--- a/xen/arch/x86/numa.c
+++ b/xen/arch/x86/numa.c
@@ -365,7 +365,7 @@ EXPORT_SYMBOL(node_data);
static void dump_numa(unsigned char key)
{
s_time_t now = NOW();
- unsigned int i, j;
+ unsigned int i, j, n;
int err;
struct domain *d;
struct page_info *page;
@@ -389,8 +389,26 @@ static void dump_numa(unsigned char key)
NODE_DATA(i)->node_id);
}
+ j = cpumask_first(&cpu_online_map);
+ n = 0;
for_each_online_cpu ( i )
- printk("CPU%d -> NODE%d\n", i, cpu_to_node[i]);
+ {
+ if ( i != j + n || cpu_to_node[j] != cpu_to_node[i] )
+ {
+ if ( n > 1 )
+ printk("CPU%u...%u -> NODE%d\n", j, j + n - 1, cpu_to_node[j]);
+ else
+ printk("CPU%u -> NODE%d\n", j, cpu_to_node[j]);
+ j = i;
+ n = 1;
+ }
+ else
+ ++n;
+ }
+ if ( n > 1 )
+ printk("CPU%u...%u -> NODE%d\n", j, j + n - 1, cpu_to_node[j]);
+ else
+ printk("CPU%u -> NODE%d\n", j, cpu_to_node[j]);
rcu_read_lock(&domlist_read_lock);