[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 01/13] libx86: Introduce libx86/cpuid.h
Begin to untangle the header dependency tangle by moving definition of struct cpuid_leaf out of x86_emulate.h into the new cpuid.h. Additionally, plumb the header through to libxc. This is technically a redundant include at this point, but it helps build-test the later changes, and will be used eventually. Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> --- CC: Jan Beulich <JBeulich@xxxxxxxx> CC: Wei Liu <wei.liu2@xxxxxxxxxx> CC: Roger Pau Monné <roger.pau@xxxxxxxxxx> CC: Sergey Dyasli <sergey.dyasli@xxxxxxxxxx> CC: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> --- tools/include/Makefile | 3 +++ tools/libxc/xc_cpuid_x86.c | 2 ++ xen/arch/x86/x86_emulate/x86_emulate.h | 7 ++----- xen/include/asm-x86/cpuid.h | 4 +++- xen/include/xen/libx86/cpuid.h | 20 ++++++++++++++++++++ 5 files changed, 30 insertions(+), 6 deletions(-) create mode 100644 xen/include/xen/libx86/cpuid.h diff --git a/tools/include/Makefile b/tools/include/Makefile index 6665105..568012d 100644 --- a/tools/include/Makefile +++ b/tools/include/Makefile @@ -21,6 +21,9 @@ xen/.dir: ln -sf $(addprefix $(XEN_ROOT)/xen/include/xen/,libelf.h elfstructs.h) xen/libelf/ ln -s ../xen-foreign xen/foreign ln -sf $(XEN_ROOT)/xen/include/acpi acpi +ifeq ($(CONFIG_X86),y) + ln -sf $(XEN_ROOT)/xen/include/xen/libx86 xen/libx86 +endif touch $@ # Not xen/xsm as that clashes with link to diff --git a/tools/libxc/xc_cpuid_x86.c b/tools/libxc/xc_cpuid_x86.c index c5c3cdc..6fbf915 100644 --- a/tools/libxc/xc_cpuid_x86.c +++ b/tools/libxc/xc_cpuid_x86.c @@ -27,6 +27,8 @@ #include <xen/hvm/params.h> #include <xen-tools/libs.h> +#include <xen/libx86/cpuid.h> + enum { #define XEN_CPUFEATURE(name, value) X86_FEATURE_##name = value, #include <xen/arch-x86/cpufeatureset.h> diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h index c22e774..abd9796 100644 --- a/xen/arch/x86/x86_emulate/x86_emulate.h +++ b/xen/arch/x86/x86_emulate/x86_emulate.h @@ -23,6 +23,8 @@ #ifndef __X86_EMULATE_H__ #define __X86_EMULATE_H__ +#include <xen/libx86/cpuid.h> + #define MAX_INST_LEN 15 #if defined(__i386__) @@ -172,11 +174,6 @@ enum x86_emulate_fpu_type { X86EMUL_FPU_none }; -struct cpuid_leaf -{ - uint32_t a, b, c, d; -}; - struct x86_emulate_state; /* diff --git a/xen/include/asm-x86/cpuid.h b/xen/include/asm-x86/cpuid.h index 4113a5e..9637303 100644 --- a/xen/include/asm-x86/cpuid.h +++ b/xen/include/asm-x86/cpuid.h @@ -18,7 +18,9 @@ #ifndef __ASSEMBLY__ #include <xen/types.h> #include <xen/kernel.h> -#include <asm/x86_emulate.h> + +#include <xen/libx86/cpuid.h> + #include <public/sysctl.h> extern const uint32_t known_features[FSCAPINTS]; diff --git a/xen/include/xen/libx86/cpuid.h b/xen/include/xen/libx86/cpuid.h new file mode 100644 index 0000000..3ccc68e --- /dev/null +++ b/xen/include/xen/libx86/cpuid.h @@ -0,0 +1,20 @@ +/* Common data structures and functions consumed by hypervisor and toolstack */ +#ifndef XEN_LIBX86_CPUID_H +#define XEN_LIBX86_CPUID_H + +struct cpuid_leaf +{ + uint32_t a, b, c, d; +}; + +#endif /* !XEN_LIBX86_CPUID_H */ + +/* + * Local variables: + * mode: C + * c-file-style: "BSD" + * c-basic-offset: 4 + * tab-width: 4 + * indent-tabs-mode: nil + * End: + */ -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |