From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Richard Henderson" <richard.henderson@linaro.org>
Subject: [PULL 07/22] system/hvf: Expose hvf_enabled() to common code
Date: Tue, 6 May 2025 16:34:56 +0200 [thread overview]
Message-ID: <20250506143512.4315-8-philmd@linaro.org> (raw)
In-Reply-To: <20250506143512.4315-1-philmd@linaro.org>
Currently hvf_enabled() is restricted to target-specific code.
By defining CONFIG_HVF_IS_POSSIBLE we allow its use anywhere.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20250403235821.9909-28-philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
---
MAINTAINERS | 1 +
include/system/hvf.h | 14 +++++++++-----
accel/stubs/hvf-stub.c | 12 ++++++++++++
accel/stubs/meson.build | 1 +
4 files changed, 23 insertions(+), 5 deletions(-)
create mode 100644 accel/stubs/hvf-stub.c
diff --git a/MAINTAINERS b/MAINTAINERS
index e748b6375ee..2f7fd460a4b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -526,6 +526,7 @@ R: Phil Dennis-Jordan <phil@philjordan.eu>
W: https://wiki.qemu.org/Features/HVF
S: Maintained
F: accel/hvf/
+F: accel/stubs/hvf-stub.c
F: include/system/hvf.h
F: include/system/hvf_int.h
diff --git a/include/system/hvf.h b/include/system/hvf.h
index d50049e1a1a..7b45a2e1988 100644
--- a/include/system/hvf.h
+++ b/include/system/hvf.h
@@ -19,15 +19,19 @@
#include "qom/object.h"
#ifdef COMPILING_PER_TARGET
+# ifdef CONFIG_HVF
+# define CONFIG_HVF_IS_POSSIBLE
+# endif /* !CONFIG_HVF */
+#else
+# define CONFIG_HVF_IS_POSSIBLE
+#endif /* COMPILING_PER_TARGET */
-#ifdef CONFIG_HVF
+#ifdef CONFIG_HVF_IS_POSSIBLE
extern bool hvf_allowed;
#define hvf_enabled() (hvf_allowed)
-#else /* !CONFIG_HVF */
+#else /* !CONFIG_HVF_IS_POSSIBLE */
#define hvf_enabled() 0
-#endif /* !CONFIG_HVF */
-
-#endif /* COMPILING_PER_TARGET */
+#endif /* !CONFIG_HVF_IS_POSSIBLE */
#define TYPE_HVF_ACCEL ACCEL_CLASS_NAME("hvf")
diff --git a/accel/stubs/hvf-stub.c b/accel/stubs/hvf-stub.c
new file mode 100644
index 00000000000..42eadc5ca92
--- /dev/null
+++ b/accel/stubs/hvf-stub.c
@@ -0,0 +1,12 @@
+/*
+ * HVF stubs for QEMU
+ *
+ * Copyright (c) Linaro
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#include "qemu/osdep.h"
+#include "system/hvf.h"
+
+bool hvf_allowed;
diff --git a/accel/stubs/meson.build b/accel/stubs/meson.build
index 91a2d219258..8ca1a4529e2 100644
--- a/accel/stubs/meson.build
+++ b/accel/stubs/meson.build
@@ -2,5 +2,6 @@ system_stubs_ss = ss.source_set()
system_stubs_ss.add(when: 'CONFIG_XEN', if_false: files('xen-stub.c'))
system_stubs_ss.add(when: 'CONFIG_KVM', if_false: files('kvm-stub.c'))
system_stubs_ss.add(when: 'CONFIG_TCG', if_false: files('tcg-stub.c'))
+system_stubs_ss.add(when: 'CONFIG_HVF', if_false: files('hvf-stub.c'))
specific_ss.add_all(when: ['CONFIG_SYSTEM_ONLY'], if_true: system_stubs_ss)
--
2.47.1
next prev parent reply other threads:[~2025-05-06 14:38 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-06 14:34 [PULL 00/22] Misc HW patches for 2025-05-06 Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 01/22] bsd-user: add option to enable plugins Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 02/22] qom: Factor qom_resolve_path() out Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 03/22] qom/object: Fix typo in comment Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 04/22] target/migration: Inline VMSTATE_CPU() Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 05/22] target/i386/hvf: Include missing 'exec/target_page.h' header Philippe Mathieu-Daudé
2025-05-07 6:35 ` Wei Liu
2025-05-07 11:20 ` Philippe Mathieu-Daudé
2025-05-08 1:09 ` Wei Liu
2025-05-06 14:34 ` [PULL 06/22] system/hvf: Avoid including 'cpu.h' Philippe Mathieu-Daudé
2025-05-06 14:34 ` Philippe Mathieu-Daudé [this message]
2025-05-06 14:34 ` [PULL 08/22] hw/hyperv/hv-balloon-stub: common compilation unit Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 09/22] hw/hyperv/hyperv.h: header cleanup Philippe Mathieu-Daudé
2025-05-06 14:34 ` [PULL 10/22] hw/hyperv/vmbus: common compilation unit Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 11/22] hw/hyperv/syndbg: " Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 12/22] hw/hyperv/balloon: common balloon compilation units Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 13/22] hw/hyperv/hyperv_testdev: common compilation unit Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 14/22] hw/hyperv/hyperv: " Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 15/22] hw/core/machine: Fix indentation Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 16/22] hw/pci/pcie_port: Fix pcie_slot_is_hotpluggbale_bus typo Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 17/22] hw/acpi/ged: Fix wrong identation Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 18/22] hw/i386/acpi-build: Fix build_append_notfication_callback typo Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 19/22] hw/i386/acpi-build: Update document reference Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 20/22] hw/i386/acpi-build: Fix typo and grammar in comment Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 21/22] hw/acpi/pcihp: Fix typo in function name Philippe Mathieu-Daudé
2025-05-06 14:35 ` [PULL 22/22] hw/isa/ich9: Remove stray empty comment Philippe Mathieu-Daudé
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=20250506143512.4315-8-philmd@linaro.org \
--to=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.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).