diff mbox series

[4/4] x86: move viridian_guest_os_id_msr to hyperv-tlfs.h

Message ID 20191220195135.20130-5-liuwe@microsoft.com (mailing list archive)
State New, archived
Headers show
Series Clean up viridian code | expand

Commit Message

Wei Liu Dec. 20, 2019, 7:51 p.m. UTC
Suggested-by: Paul Durrant <pdurrant@amazon.com>
Signed-off-by: Wei Liu <liuwe@microsoft.com>
---
 xen/arch/x86/hvm/viridian/viridian.c    |  2 +-
 xen/include/asm-x86/guest/hyperv-tlfs.h | 13 +++++++++++++
 xen/include/asm-x86/hvm/viridian.h      | 18 +++---------------
 3 files changed, 17 insertions(+), 16 deletions(-)

Comments

Paul Durrant Dec. 21, 2019, 12:28 p.m. UTC | #1
> -----Original Message-----
> From: Wei Liu <wei.liu.xen@gmail.com> On Behalf Of Wei Liu
> Sent: 20 December 2019 19:52
> To: Xen Development List <xen-devel@lists.xenproject.org>
> Cc: Michael Kelley <mikelley@microsoft.com>; Durrant, Paul
> <pdurrant@amazon.com>; Wei Liu <liuwe@microsoft.com>; Paul Durrant
> <paul@xen.org>; Jan Beulich <jbeulich@suse.com>; Andrew Cooper
> <andrew.cooper3@citrix.com>; Wei Liu <wl@xen.org>; Roger Pau Monné
> <roger.pau@citrix.com>
> Subject: [PATCH 4/4] x86: move viridian_guest_os_id_msr to hyperv-tlfs.h
> 
> Suggested-by: Paul Durrant <pdurrant@amazon.com>
> Signed-off-by: Wei Liu <liuwe@microsoft.com>

Reviewed-by: Paul Durrant <paul@xen.org>

> ---
>  xen/arch/x86/hvm/viridian/viridian.c    |  2 +-
>  xen/include/asm-x86/guest/hyperv-tlfs.h | 13 +++++++++++++
>  xen/include/asm-x86/hvm/viridian.h      | 18 +++---------------
>  3 files changed, 17 insertions(+), 16 deletions(-)
> 
> diff --git a/xen/arch/x86/hvm/viridian/viridian.c
> b/xen/arch/x86/hvm/viridian/viridian.c
> index 341592f054..44c8e6cac6 100644
> --- a/xen/arch/x86/hvm/viridian/viridian.c
> +++ b/xen/arch/x86/hvm/viridian/viridian.c
> @@ -218,7 +218,7 @@ void cpuid_viridian_leaves(const struct vcpu *v,
> uint32_t leaf,
> 
>  static void dump_guest_os_id(const struct domain *d)
>  {
> -    const union viridian_guest_os_id_msr *goi;
> +    const union hv_guest_os_id *goi;
> 
>      goi = &d->arch.hvm.viridian->guest_os_id;
> 
> diff --git a/xen/include/asm-x86/guest/hyperv-tlfs.h b/xen/include/asm-
> x86/guest/hyperv-tlfs.h
> index b128807b2c..4402854c80 100644
> --- a/xen/include/asm-x86/guest/hyperv-tlfs.h
> +++ b/xen/include/asm-x86/guest/hyperv-tlfs.h
> @@ -327,6 +327,19 @@ struct ms_hyperv_tsc_page {
>   */
> 
>  #define HV_LINUX_VENDOR_ID              0x8100
> +union hv_guest_os_id
> +{
> +    uint64_t raw;
> +    struct
> +    {
> +        uint64_t build_number:16;
> +        uint64_t service_pack:8;
> +        uint64_t minor:8;
> +        uint64_t major:8;
> +        uint64_t os:8;
> +        uint64_t vendor:16;
> +    };
> +};
> 
>  struct hv_reenlightenment_control {
>  	__u64 vector:8;
> diff --git a/xen/include/asm-x86/hvm/viridian.h b/xen/include/asm-
> x86/hvm/viridian.h
> index 010c8b58d4..cfbaede158 100644
> --- a/xen/include/asm-x86/hvm/viridian.h
> +++ b/xen/include/asm-x86/hvm/viridian.h
> @@ -9,6 +9,8 @@
>  #ifndef __ASM_X86_HVM_VIRIDIAN_H__
>  #define __ASM_X86_HVM_VIRIDIAN_H__
> 
> +#include <asm/guest/hyperv-tlfs.h>
> +
>  union viridian_page_msr
>  {
>      uint64_t raw;
> @@ -83,20 +85,6 @@ struct viridian_vcpu
>      uint64_t crash_param[5];
>  };
> 
> -union viridian_guest_os_id_msr
> -{
> -    uint64_t raw;
> -    struct
> -    {
> -        uint64_t build_number:16;
> -        uint64_t service_pack:8;
> -        uint64_t minor:8;
> -        uint64_t major:8;
> -        uint64_t os:8;
> -        uint64_t vendor:16;
> -    };
> -};
> -
>  struct viridian_time_ref_count
>  {
>      unsigned long flags;
> @@ -112,7 +100,7 @@ struct viridian_time_ref_count
> 
>  struct viridian_domain
>  {
> -    union viridian_guest_os_id_msr guest_os_id;
> +    union hv_guest_os_id guest_os_id;
>      union viridian_page_msr hypercall_gpa;
>      struct viridian_time_ref_count time_ref_count;
>      struct viridian_page reference_tsc;
> --
> 2.20.1
diff mbox series

Patch

diff --git a/xen/arch/x86/hvm/viridian/viridian.c b/xen/arch/x86/hvm/viridian/viridian.c
index 341592f054..44c8e6cac6 100644
--- a/xen/arch/x86/hvm/viridian/viridian.c
+++ b/xen/arch/x86/hvm/viridian/viridian.c
@@ -218,7 +218,7 @@  void cpuid_viridian_leaves(const struct vcpu *v, uint32_t leaf,
 
 static void dump_guest_os_id(const struct domain *d)
 {
-    const union viridian_guest_os_id_msr *goi;
+    const union hv_guest_os_id *goi;
 
     goi = &d->arch.hvm.viridian->guest_os_id;
 
diff --git a/xen/include/asm-x86/guest/hyperv-tlfs.h b/xen/include/asm-x86/guest/hyperv-tlfs.h
index b128807b2c..4402854c80 100644
--- a/xen/include/asm-x86/guest/hyperv-tlfs.h
+++ b/xen/include/asm-x86/guest/hyperv-tlfs.h
@@ -327,6 +327,19 @@  struct ms_hyperv_tsc_page {
  */
 
 #define HV_LINUX_VENDOR_ID              0x8100
+union hv_guest_os_id
+{
+    uint64_t raw;
+    struct
+    {
+        uint64_t build_number:16;
+        uint64_t service_pack:8;
+        uint64_t minor:8;
+        uint64_t major:8;
+        uint64_t os:8;
+        uint64_t vendor:16;
+    };
+};
 
 struct hv_reenlightenment_control {
 	__u64 vector:8;
diff --git a/xen/include/asm-x86/hvm/viridian.h b/xen/include/asm-x86/hvm/viridian.h
index 010c8b58d4..cfbaede158 100644
--- a/xen/include/asm-x86/hvm/viridian.h
+++ b/xen/include/asm-x86/hvm/viridian.h
@@ -9,6 +9,8 @@ 
 #ifndef __ASM_X86_HVM_VIRIDIAN_H__
 #define __ASM_X86_HVM_VIRIDIAN_H__
 
+#include <asm/guest/hyperv-tlfs.h>
+
 union viridian_page_msr
 {
     uint64_t raw;
@@ -83,20 +85,6 @@  struct viridian_vcpu
     uint64_t crash_param[5];
 };
 
-union viridian_guest_os_id_msr
-{
-    uint64_t raw;
-    struct
-    {
-        uint64_t build_number:16;
-        uint64_t service_pack:8;
-        uint64_t minor:8;
-        uint64_t major:8;
-        uint64_t os:8;
-        uint64_t vendor:16;
-    };
-};
-
 struct viridian_time_ref_count
 {
     unsigned long flags;
@@ -112,7 +100,7 @@  struct viridian_time_ref_count
 
 struct viridian_domain
 {
-    union viridian_guest_os_id_msr guest_os_id;
+    union hv_guest_os_id guest_os_id;
     union viridian_page_msr hypercall_gpa;
     struct viridian_time_ref_count time_ref_count;
     struct viridian_page reference_tsc;