Hi Daniel, Thanks for your comments. I will not change public ABI nor break RPC. I wonder if you would agree with extend virHostCPUGetInfoPopulateLinux to get l3 cache size ? Such as: virHostCPUGetInfoPopulateLinux(FILE *cpuinfo, virArch arch, unsigned int *cpus, unsigned int *mhz, unsigned int *nodes, unsigned int *sockets, unsigned int *cores, unsigned int *threads, unsigned int *l3_cache) ←--------- virHostCPUGetInfoPopulateLinux is doing parsing /proc/cpuinfo , so I think it’s the best way to get l3 cache size. cat /proc/cpuinfo … cpu MHz : 2821.435 cache size : 56320 KB … Best Regards Eli Qiao(乔立勇)OpenStack Core team OTC Intel. -- On 10/01/2017, 5:44 PM, "Daniel P. Berrange" <berrange@xxxxxxxxxx> wrote: On Tue, Jan 10, 2017 at 04:11:03PM +0800, Eli Qiao wrote: > This patch extends l3 cache infomation to nodeinfo output. > > Signed-off-by: Eli Qiao <liyong.qiao@xxxxxxxxx> > --- > include/libvirt/libvirt-host.h | 1 + > src/nodeinfo.c | 3 ++- > src/remote/remote_protocol.x | 1 + > src/test/test_driver.c | 1 + > src/util/virhostcpu.c | 29 +++++++++++++++++++++++++---- > src/util/virhostcpu.h | 3 ++- > src/util/virhostcpupriv.h | 3 ++- > tests/virhostcputest.c | 3 ++- > tools/virsh-host.c | 1 + > 9 files changed, 37 insertions(+), 8 deletions(-) > > diff --git a/include/libvirt/libvirt-host.h b/include/libvirt/libvirt-host.h > index 07b5d15..ba926df 100644 > --- a/include/libvirt/libvirt-host.h > +++ b/include/libvirt/libvirt-host.h > @@ -167,6 +167,7 @@ struct _virNodeInfo { > processors in case of unusual NUMA topology*/ > unsigned int threads; /* number of threads per core, 1 in case of > unusual numa topology */ > + unsigned int l3_cache; /* l3 cache in kilobytes */ > }; NACK, it is *forbidden* to change public structs as this breaks ABI compatibility. Okay, get it. > diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x > index b846ef2..6a16b4e 100644 > --- a/src/remote/remote_protocol.x > +++ b/src/remote/remote_protocol.x > @@ -489,6 +489,7 @@ struct remote_node_get_info_ret { /* insert@1 */ > int sockets; > int cores; > int threads; > + int l3_cache; > }; Likewise this breaks RPC compatibility. This info wil need to be reported in the capabilities XML instead. Sure. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list