Mailing List Archive

[xen staging] libs/guest: Move struct xc_cpu_policy into xg_private.h
commit f7ad9ee7cafa679946beaa40d5eb3eab500e86b5
Author: Andrew Cooper <andrew.cooper3@citrix.com>
AuthorDate: Thu Jun 10 12:57:42 2021 +0100
Commit: Andrew Cooper <andrew.cooper3@citrix.com>
CommitDate: Tue Jun 15 20:50:32 2021 +0100

libs/guest: Move struct xc_cpu_policy into xg_private.h

... so tests can peek at the internals, without the structure being generally
available to users of the library.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
tools/libs/guest/xg_cpuid_x86.c | 11 +----------
tools/libs/guest/xg_private.h | 11 +++++++++++
2 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/tools/libs/guest/xg_cpuid_x86.c b/tools/libs/guest/xg_cpuid_x86.c
index ec5a47fde4..e01d657e03 100644
--- a/tools/libs/guest/xg_cpuid_x86.c
+++ b/tools/libs/guest/xg_cpuid_x86.c
@@ -22,7 +22,7 @@
#include <stdlib.h>
#include <stdbool.h>
#include <limits.h>
-#include "xc_private.h"
+#include "xg_private.h"
#include "xc_bitops.h"
#include <xen/hvm/params.h>
#include <xen-tools/libs.h>
@@ -34,18 +34,9 @@ enum {

#include <xen/asm/x86-vendors.h>

-#include <xen/lib/x86/cpu-policy.h>
-
#define bitmaskof(idx) (1u << ((idx) & 31))
#define featureword_of(idx) ((idx) >> 5)

-struct xc_cpu_policy {
- struct cpuid_policy cpuid;
- struct msr_policy msr;
- xen_cpuid_leaf_t leaves[CPUID_MAX_SERIALISED_LEAVES];
- xen_msr_entry_t entries[MSR_MAX_SERIALISED_ENTRIES];
-};
-
int xc_get_cpu_levelling_caps(xc_interface *xch, uint32_t *caps)
{
DECLARE_SYSCTL;
diff --git a/tools/libs/guest/xg_private.h b/tools/libs/guest/xg_private.h
index 03d765da21..28441ee13f 100644
--- a/tools/libs/guest/xg_private.h
+++ b/tools/libs/guest/xg_private.h
@@ -168,4 +168,15 @@ int pin_table(xc_interface *xch, unsigned int type, unsigned long mfn,
#define M2P_SIZE(_m) ROUNDUP(((_m) * sizeof(xen_pfn_t)), M2P_SHIFT)
#define M2P_CHUNKS(_m) (M2P_SIZE((_m)) >> M2P_SHIFT)

+#if defined(__x86_64__) || defined(__i386__)
+#include <xen/lib/x86/cpu-policy.h>
+
+struct xc_cpu_policy {
+ struct cpuid_policy cpuid;
+ struct msr_policy msr;
+ xen_cpuid_leaf_t leaves[CPUID_MAX_SERIALISED_LEAVES];
+ xen_msr_entry_t entries[MSR_MAX_SERIALISED_ENTRIES];
+};
+#endif /* x86 */
+
#endif /* XG_PRIVATE_H */
--
generated by git-patchbot for /home/xen/git/xen.git#staging