diff mbox series

[2/2] whpx: move internal definitions to whpx-internal.h

Message ID 20201219090637.1700900-3-pbonzini@redhat.com (mailing list archive)
State New, archived
Headers show
Series Cleanup internal WHPX headers | expand

Commit Message

Paolo Bonzini Dec. 19, 2020, 9:06 a.m. UTC
Only leave the external interface in sysemu/whpx.h.  whpx_apic_in_platform
is moved to a .c file because it needs whpx_state.

Reported-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 include/sysemu/whpx.h            | 22 +---------------------
 target/i386/whpx/whpx-all.c      |  4 ++++
 target/i386/whpx/whpx-internal.h | 18 ++++++++++++++++++
 3 files changed, 23 insertions(+), 21 deletions(-)

Comments

Marc-André Lureau Dec. 21, 2020, 8:17 a.m. UTC | #1
On Sat, Dec 19, 2020 at 1:06 PM Paolo Bonzini <pbonzini@redhat.com> wrote:

> Only leave the external interface in sysemu/whpx.h.  whpx_apic_in_platform
> is moved to a .c file because it needs whpx_state.
>
> Reported-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>

---
>  include/sysemu/whpx.h            | 22 +---------------------
>  target/i386/whpx/whpx-all.c      |  4 ++++
>  target/i386/whpx/whpx-internal.h | 18 ++++++++++++++++++
>  3 files changed, 23 insertions(+), 21 deletions(-)
>
> diff --git a/include/sysemu/whpx.h b/include/sysemu/whpx.h
> index 9346fd92e9..8ca1c1c4ac 100644
> --- a/include/sysemu/whpx.h
> +++ b/include/sysemu/whpx.h
> @@ -15,28 +15,8 @@
>
>  #ifdef CONFIG_WHPX
>
> -#include "whp-dispatch.h"
> -
> -struct whpx_state {
> -    uint64_t mem_quota;
> -    WHV_PARTITION_HANDLE partition;
> -    bool kernel_irqchip_allowed;
> -    bool kernel_irqchip_required;
> -    bool apic_in_platform;
> -};
> -
> -struct whpx_lapic_state {
> -    struct {
> -        uint32_t data;
> -        uint32_t padding[3];
> -    } fields[256];
> -};
> -
> -extern struct whpx_state whpx_global;
>  int whpx_enabled(void);
> -
> -void whpx_apic_get(DeviceState *s);
> -#define whpx_apic_in_platform() (whpx_global.apic_in_platform)
> +bool whpx_apic_in_platform(void);
>
>  #else /* CONFIG_WHPX */
>
> diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c
> index 12f79e2cd6..985ceba8f8 100644
> --- a/target/i386/whpx/whpx-all.c
> +++ b/target/i386/whpx/whpx-all.c
> @@ -1866,6 +1866,10 @@ int whpx_enabled(void)
>      return whpx_allowed;
>  }
>
> +bool whpx_apic_in_platform(void) {
> +    return whpx_global.apic_in_platform;
> +}
> +
>  static void whpx_accel_class_init(ObjectClass *oc, void *data)
>  {
>      AccelClass *ac = ACCEL_CLASS(oc);
> diff --git a/target/i386/whpx/whpx-internal.h
> b/target/i386/whpx/whpx-internal.h
> index e0a9ea1dce..8cfaaef141 100644
> --- a/target/i386/whpx/whpx-internal.h
> +++ b/target/i386/whpx/whpx-internal.h
> @@ -5,6 +5,24 @@
>  #include <WinHvPlatform.h>
>  #include <WinHvEmulation.h>
>
> +struct whpx_state {
> +    uint64_t mem_quota;
> +    WHV_PARTITION_HANDLE partition;
> +    bool kernel_irqchip_allowed;
> +    bool kernel_irqchip_required;
> +    bool apic_in_platform;
> +};
> +
> +struct whpx_lapic_state {
> +    struct {
> +        uint32_t data;
> +        uint32_t padding[3];
> +    } fields[256];
> +};
> +
> +extern struct whpx_state whpx_global;
> +void whpx_apic_get(DeviceState *s);
> +
>  #define WHV_E_UNKNOWN_CAPABILITY 0x80370300L
>
>  #define LIST_WINHVPLATFORM_FUNCTIONS(X) \
> --
> 2.26.2
>
>
Philippe Mathieu-Daudé Jan. 7, 2021, 11:15 a.m. UTC | #2
On 12/19/20 10:06 AM, Paolo Bonzini wrote:
> Only leave the external interface in sysemu/whpx.h.  whpx_apic_in_platform
> is moved to a .c file because it needs whpx_state.
> 
> Reported-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  include/sysemu/whpx.h            | 22 +---------------------
>  target/i386/whpx/whpx-all.c      |  4 ++++
>  target/i386/whpx/whpx-internal.h | 18 ++++++++++++++++++
>  3 files changed, 23 insertions(+), 21 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
diff mbox series

Patch

diff --git a/include/sysemu/whpx.h b/include/sysemu/whpx.h
index 9346fd92e9..8ca1c1c4ac 100644
--- a/include/sysemu/whpx.h
+++ b/include/sysemu/whpx.h
@@ -15,28 +15,8 @@ 
 
 #ifdef CONFIG_WHPX
 
-#include "whp-dispatch.h"
-
-struct whpx_state {
-    uint64_t mem_quota;
-    WHV_PARTITION_HANDLE partition;
-    bool kernel_irqchip_allowed;
-    bool kernel_irqchip_required;
-    bool apic_in_platform;
-};
-
-struct whpx_lapic_state {
-    struct {
-        uint32_t data;
-        uint32_t padding[3];
-    } fields[256];
-};
-
-extern struct whpx_state whpx_global;
 int whpx_enabled(void);
-
-void whpx_apic_get(DeviceState *s);
-#define whpx_apic_in_platform() (whpx_global.apic_in_platform)
+bool whpx_apic_in_platform(void);
 
 #else /* CONFIG_WHPX */
 
diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c
index 12f79e2cd6..985ceba8f8 100644
--- a/target/i386/whpx/whpx-all.c
+++ b/target/i386/whpx/whpx-all.c
@@ -1866,6 +1866,10 @@  int whpx_enabled(void)
     return whpx_allowed;
 }
 
+bool whpx_apic_in_platform(void) {
+    return whpx_global.apic_in_platform;
+}
+
 static void whpx_accel_class_init(ObjectClass *oc, void *data)
 {
     AccelClass *ac = ACCEL_CLASS(oc);
diff --git a/target/i386/whpx/whpx-internal.h b/target/i386/whpx/whpx-internal.h
index e0a9ea1dce..8cfaaef141 100644
--- a/target/i386/whpx/whpx-internal.h
+++ b/target/i386/whpx/whpx-internal.h
@@ -5,6 +5,24 @@ 
 #include <WinHvPlatform.h>
 #include <WinHvEmulation.h>
 
+struct whpx_state {
+    uint64_t mem_quota;
+    WHV_PARTITION_HANDLE partition;
+    bool kernel_irqchip_allowed;
+    bool kernel_irqchip_required;
+    bool apic_in_platform;
+};
+
+struct whpx_lapic_state {
+    struct {
+        uint32_t data;
+        uint32_t padding[3];
+    } fields[256];
+};
+
+extern struct whpx_state whpx_global;
+void whpx_apic_get(DeviceState *s);
+
 #define WHV_E_UNKNOWN_CAPABILITY 0x80370300L
 
 #define LIST_WINHVPLATFORM_FUNCTIONS(X) \