[libvirt] [Resending][PATCH v2 2/2] x86: Allow sysinfo to fall back on /proc/cpuinfo if demidecode is absent

Daniel Veillard veillard at redhat.com
Thu Mar 15 07:10:51 UTC 2012


On Thu, Mar 15, 2012 at 12:28:05PM +0530, Prerna Saxena wrote:
> On 03/15/2012 11:37 AM, Daniel Veillard wrote:
> > On Thu, Mar 15, 2012 at 11:21:09AM +0530, Prerna Saxena wrote:
> >> Hi Daniel,
> >> Thank you for taking a look.
[...]
> >> Thanks for pointing this out. I investigated this discrepancy, and
> >> discovered that 'dmidecode' presents a listing of processor *cores*.
> >> However, for /proc/cpuinfo, all hardware threads in a processor show up
> >> as independent processors. So, while dmidecode correctly reads that my
> >> system has a single core, /proc/cpuinfo reports two hardware threads in
> >> the core as two independent logical CPUs.
> >> To sort this out, one alternative would be to parse the physical_id in
> >> /proc/cpuinfo -- this would be identical for all logical processors in a
> >> given core, and thus can be used to report the number of cores in the
> >> system. Will send a modified patch asap.
> 
> Hi Daniel,
> I just realised a correction in the explanation above -- dmidecode only
> reveals a per-socket listing, while /proc/cpuinfo lists all the physical
> cores within a socket.
> 
> So if demidecode lists single entry for a processor, it can be inferred
> that the machine in question has one socket. /proc/cpuinfo will have
> listings for each physical core in that socket, plus the hardware
> threads available.
> 
> As mentioned earlier, I will be happy to spin a patch that uses
> 'physical_id' (constant for all cores in a socket) to provide a
> socket-level information. This will attain parity with 'dmidecode'
> output and will report *one socket* for such a machine, under the
> 'processor' XML tag.( Which could be a little misleading)
> 
> However, I am curious -- what benefit would the number of sockets be to
> a libvirt user? I expect users would mostly care about number of
> available CPU cores to take scheduling decisions. Am I missing a
> use-case for exclusive need of socket-level information?

  The question at this point is not whether the information is better
or not, it must be the same in the fallback case. The informations
won't be missing, it can be gathered by 'virsh nodeinfo' and equivalent
API. Point of patch 2/2 is to provide some identical informations
in the case dmidecode is missing.

Daniel

-- 
Daniel Veillard      | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
daniel at veillard.com  | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library  http://libvirt.org/




More information about the libvir-list mailing list