From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: marcandre.lureau@redhat.com
Subject: [PATCH 2/2] whpx: move internal definitions to whpx-internal.h
Date: Sat, 19 Dec 2020 04:06:37 -0500 [thread overview]
Message-ID: <20201219090637.1700900-3-pbonzini@redhat.com> (raw)
In-Reply-To: <20201219090637.1700900-1-pbonzini@redhat.com>
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(-)
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
next prev parent reply other threads:[~2020-12-19 9:07 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-19 9:06 [PATCH 0/2] Cleanup internal WHPX headers Paolo Bonzini
2020-12-19 9:06 ` [PATCH 1/2] whpx: rename whp-dispatch to whpx-internal.h Paolo Bonzini
2020-12-21 8:15 ` Marc-André Lureau
2020-12-19 9:06 ` Paolo Bonzini [this message]
2020-12-21 8:17 ` [PATCH 2/2] whpx: move internal definitions " Marc-André Lureau
2021-01-07 11:15 ` Philippe Mathieu-Daudé
2020-12-19 9:12 ` [PATCH 0/2] Cleanup internal WHPX headers no-reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201219090637.1700900-3-pbonzini@redhat.com \
--to=pbonzini@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).