From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v3 01/19] xen: dump vNUMA information with debug key "u" Date: Tue, 13 Jan 2015 19:21:47 +0000 Message-ID: <54B5704B.1010805@citrix.com> References: <1421151107-20842-1-git-send-email-wei.liu2@citrix.com> <1421151107-20842-2-git-send-email-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1421151107-20842-2-git-send-email-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Wei Liu , xen-devel@lists.xen.org Cc: dario.faggioli@citrix.com, Jan Beulich , Elena Ufimsteva List-Id: xen-devel@lists.xenproject.org On 13/01/15 12:11, Wei Liu wrote: > @@ -408,6 +413,49 @@ static void dump_numa(unsigned char key) > > for_each_online_node ( i ) > printk(" Node %u: %u\n", i, page_num_node[i]); > + > + if ( !d->vnuma ) > + continue; Nit - extraneous whitespace. > + > + vnuma = d->vnuma; > + printk(" %u vnodes, %u vcpus:\n", vnuma->nr_vnodes, d->max_vcpus); > + for ( i = 0; i < vnuma->nr_vnodes; i++ ) > + { > + err = snprintf(keyhandler_scratch, 12, "%3u", > + vnuma->vnode_to_pnode[i]); > + if ( err < 0 || vnuma->vnode_to_pnode[i] == NUMA_NO_NODE ) > + strlcpy(keyhandler_scratch, "???", 3); > + > + printk(" vnode %3u - pnode %s\n", i, keyhandler_scratch); > + for ( j = 0; j < vnuma->nr_vmemranges; j++ ) > + { > + if ( vnuma->vmemrange[j].nid == i ) > + { > + printk(" %016"PRIx64" - %016"PRIx64"\n", > + vnuma->vmemrange[j].start, > + vnuma->vmemrange[j].end); > + } > + } > + > + printk(" vcpus: "); > + for ( j = 0, n = 0; j < d->max_vcpus; j++ ) > + { > + if ( !(j & 0x3f) ) > + process_pending_softirqs(); > + > + if ( vnuma->vcpu_to_vnode[j] == i ) > + { > + if ( (n + 1) % 8 == 0 ) > + printk("%3d\n", j); > + else if ( !(n % 8) && n != 0 ) > + printk("%17d ", j); > + else > + printk("%3d ", j); > + n++; > + } Do you have a sample of what this looks like for a VM with more than 8 vcpus ? ~Andrew > + } > + printk("\n"); > + } > } > > rcu_read_unlock(&domlist_read_lock);