src: warn against virNodeGetInfo() API call due to inaccurate info

Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2019-12-16 10:35:50 +00:00
parent 3e719fe949
commit 5209791e47
2 changed files with 20 additions and 0 deletions

View File

@ -147,6 +147,10 @@ typedef virSecurityModel *virSecurityModelPtr;
*
* a virNodeInfo is a structure filled by virNodeGetInfo() and providing
* the information for the Node.
*
* Note that the information in this struct is not guaranteed to be an
* accurate relection of the system hardware. See the virNodeGetInfo()
* API documentation for further guidance.
*/
typedef struct _virNodeInfo virNodeInfo;

View File

@ -399,6 +399,22 @@ virConnectGetMaxVcpus(virConnectPtr conn,
*
* Extract hardware information about the node.
*
* Use of this API is strongly discouraged as the information provided
* is not guaranteed to be accurate on all hardware platforms.
*
* The mHZ value merely reflects the speed that the first CPU in the
* machine is currently running at. This speed may vary across CPUs
* and changes continually as the host OS throttles.
*
* The nodes/sockets/cores/threads data is potentially inaccurate as
* it assumes a symmetric installation. If one NUMA node has more
* sockets populated that another NUMA node this information will be
* wrong. It is also not able to report about CPU dies.
*
* Applications are recommended to use the virConnectGetCapabilities()
* call instead, which provides all the information except CPU mHZ,
* in a more accurate representation.
*
* Returns 0 in case of success and -1 in case of failure.
*/
int