... 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>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
tools/libs/guest/xg_cpuid_x86.c | 11 +----------
tools/libs/guest/xg_private.h | 9 +++++++++
2 files changed, 10 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..59909d2a2c 100644
--- a/tools/libs/guest/xg_private.h
+++ b/tools/libs/guest/xg_private.h
@@ -33,6 +33,8 @@
#include <xen/elfnote.h>
#include <xen/libelf/libelf.h>
+#include <xen/lib/x86/cpu-policy.h>
+
#ifndef ELFSIZE
#include <limits.h>
#if UINT_MAX == ULONG_MAX
@@ -168,4 +170,11 @@ 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)
+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 /* XG_PRIVATE_H */
--
2.11.0
On 11.06.2021 18:36, Andrew Cooper wrote: > ... so tests can peek at the internals, without the structure being generally > available to users of the library. I'm not sure whether this slight over-exposure is tolerable in the tools code, so I'd prefer leaving the ack-ing of this change to the tools folks. Jan
Jan Beulich writes ("Re: [PATCH 4/5] libs/guest: Move struct xc_cpu_policy into xg_private.h"):
> On 11.06.2021 18:36, Andrew Cooper wrote: ... so tests can peek at
> > the internals, without the structure being generally available to
> > users of the library.
>
> I'm not sure whether this slight over-exposure is tolerable in the tools code,
> so I'd prefer leaving the ack-ing of this change to the tools folks.
I am fine with the change described in the Subject.
But I haven't reviewed the patch, which wasn't CC'd to me AFAICT.
Ian.
On 14.06.2021 15:49, Ian Jackson wrote:
> Jan Beulich writes ("Re: [PATCH 4/5] libs/guest: Move struct xc_cpu_policy into xg_private.h"):
>> On 11.06.2021 18:36, Andrew Cooper wrote: ... so tests can peek at
>>> the internals, without the structure being generally available to
>>> users of the library.
>>
>> I'm not sure whether this slight over-exposure is tolerable in the tools code,
>> so I'd prefer leaving the ack-ing of this change to the tools folks.
>
> I am fine with the change described in the Subject.
In which case I'm happy to give
Acked-by: Jan Beulich <jbeulich@suse.com>
Jan
© 2016 - 2026 Red Hat, Inc.