Have "hw/xen/xen-pvh-common.h" include the bare minimal set
of headers. Adapt sources to avoid errors when refactoring
unrelated headers such:
hw/i386/xen/xen-pvh.c: In function ‘xen_pvh_machine_class_init’:
hw/i386/xen/xen-pvh.c:84:28: error: ‘TARGET_DEFAULT_CPU_TYPE’ undeclared (first use in this function)
84 | mc->default_cpu_type = TARGET_DEFAULT_CPU_TYPE;
| ^~~~~~~~~~~~~~~~~~~~~~~
hw/xen/xen-pvh-common.c: In function ‘xen_pvh_init’:
hw/xen/xen-pvh-common.c:217:43: error: ‘MiB’ undeclared (first use in this function)
217 | if (s->cfg.pci_ecam.size != 256 * MiB) {
| ^~~
hw/xen/xen-hvm-common.c:18:6: error: no previous prototype for ‘xen_mr_is_memory’ [-Werror=missing-prototypes]
18 | bool xen_mr_is_memory(MemoryRegion *mr)
| ^~~~~~~~~~~~~~~~
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
include/hw/xen/xen-pvh-common.h | 8 ++++----
hw/i386/xen/xen-pvh.c | 1 +
hw/xen/xen-pvh-common.c | 6 ++----
3 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/include/hw/xen/xen-pvh-common.h b/include/hw/xen/xen-pvh-common.h
index 5cdd23c2f4d..17c5a58a5a4 100644
--- a/include/hw/xen/xen-pvh-common.h
+++ b/include/hw/xen/xen-pvh-common.h
@@ -9,11 +9,11 @@
#ifndef XEN_PVH_COMMON_H__
#define XEN_PVH_COMMON_H__
-#include <assert.h>
-#include "hw/sysbus.h"
-#include "hw/hw.h"
-#include "hw/xen/xen-hvm-common.h"
+#include "exec/memory.h"
+#include "qom/object.h"
+#include "hw/boards.h"
#include "hw/pci-host/gpex.h"
+#include "hw/xen/xen-hvm-common.h"
#define TYPE_XEN_PVH_MACHINE MACHINE_TYPE_NAME("xen-pvh-base")
OBJECT_DECLARE_TYPE(XenPVHMachineState, XenPVHMachineClass,
diff --git a/hw/i386/xen/xen-pvh.c b/hw/i386/xen/xen-pvh.c
index 33c10279763..f6356f2a7ed 100644
--- a/hw/i386/xen/xen-pvh.c
+++ b/hw/i386/xen/xen-pvh.c
@@ -14,6 +14,7 @@
#include "hw/xen/arch_hvm.h"
#include <xen/hvm/hvm_info_table.h>
#include "hw/xen/xen-pvh-common.h"
+#include "target/i386/cpu.h"
#define TYPE_XEN_PVH_X86 MACHINE_TYPE_NAME("xenpvh")
OBJECT_DECLARE_SIMPLE_TYPE(XenPVHx86State, XEN_PVH_X86)
diff --git a/hw/xen/xen-pvh-common.c b/hw/xen/xen-pvh-common.c
index 9c21fa858d3..19876ad7e8d 100644
--- a/hw/xen/xen-pvh-common.c
+++ b/hw/xen/xen-pvh-common.c
@@ -7,15 +7,13 @@
*/
#include "qemu/osdep.h"
-#include "qemu/error-report.h"
-#include "qapi/error.h"
+#include "qemu/units.h"
#include "qapi/visitor.h"
#include "hw/boards.h"
#include "hw/irq.h"
-#include "hw/sysbus.h"
-#include "system/system.h"
#include "system/tpm.h"
#include "system/tpm_backend.h"
+#include "system/runstate.h"
#include "hw/xen/xen-pvh-common.h"
#include "trace.h"
--
2.47.1
On Tue, Feb 18, 2025 at 10:26 AM Philippe Mathieu-Daudé <philmd@linaro.org>
wrote:
> Have "hw/xen/xen-pvh-common.h" include the bare minimal set
> of headers. Adapt sources to avoid errors when refactoring
> unrelated headers such:
>
> hw/i386/xen/xen-pvh.c: In function ‘xen_pvh_machine_class_init’:
> hw/i386/xen/xen-pvh.c:84:28: error: ‘TARGET_DEFAULT_CPU_TYPE’
> undeclared (first use in this function)
> 84 | mc->default_cpu_type = TARGET_DEFAULT_CPU_TYPE;
> | ^~~~~~~~~~~~~~~~~~~~~~~
> hw/xen/xen-pvh-common.c: In function ‘xen_pvh_init’:
> hw/xen/xen-pvh-common.c:217:43: error: ‘MiB’ undeclared (first use in
> this function)
> 217 | if (s->cfg.pci_ecam.size != 256 * MiB) {
> | ^~~
> hw/xen/xen-hvm-common.c:18:6: error: no previous prototype for
> ‘xen_mr_is_memory’ [-Werror=missing-prototypes]
> 18 | bool xen_mr_is_memory(MemoryRegion *mr)
> | ^~~~~~~~~~~~~~~~
>
>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@amd.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> include/hw/xen/xen-pvh-common.h | 8 ++++----
> hw/i386/xen/xen-pvh.c | 1 +
> hw/xen/xen-pvh-common.c | 6 ++----
> 3 files changed, 7 insertions(+), 8 deletions(-)
>
> diff --git a/include/hw/xen/xen-pvh-common.h
> b/include/hw/xen/xen-pvh-common.h
> index 5cdd23c2f4d..17c5a58a5a4 100644
> --- a/include/hw/xen/xen-pvh-common.h
> +++ b/include/hw/xen/xen-pvh-common.h
> @@ -9,11 +9,11 @@
> #ifndef XEN_PVH_COMMON_H__
> #define XEN_PVH_COMMON_H__
>
> -#include <assert.h>
> -#include "hw/sysbus.h"
> -#include "hw/hw.h"
> -#include "hw/xen/xen-hvm-common.h"
> +#include "exec/memory.h"
> +#include "qom/object.h"
> +#include "hw/boards.h"
> #include "hw/pci-host/gpex.h"
> +#include "hw/xen/xen-hvm-common.h"
>
> #define TYPE_XEN_PVH_MACHINE MACHINE_TYPE_NAME("xen-pvh-base")
> OBJECT_DECLARE_TYPE(XenPVHMachineState, XenPVHMachineClass,
> diff --git a/hw/i386/xen/xen-pvh.c b/hw/i386/xen/xen-pvh.c
> index 33c10279763..f6356f2a7ed 100644
> --- a/hw/i386/xen/xen-pvh.c
> +++ b/hw/i386/xen/xen-pvh.c
> @@ -14,6 +14,7 @@
> #include "hw/xen/arch_hvm.h"
> #include <xen/hvm/hvm_info_table.h>
> #include "hw/xen/xen-pvh-common.h"
> +#include "target/i386/cpu.h"
>
> #define TYPE_XEN_PVH_X86 MACHINE_TYPE_NAME("xenpvh")
> OBJECT_DECLARE_SIMPLE_TYPE(XenPVHx86State, XEN_PVH_X86)
> diff --git a/hw/xen/xen-pvh-common.c b/hw/xen/xen-pvh-common.c
> index 9c21fa858d3..19876ad7e8d 100644
> --- a/hw/xen/xen-pvh-common.c
> +++ b/hw/xen/xen-pvh-common.c
> @@ -7,15 +7,13 @@
> */
>
> #include "qemu/osdep.h"
> -#include "qemu/error-report.h"
> -#include "qapi/error.h"
> +#include "qemu/units.h"
> #include "qapi/visitor.h"
> #include "hw/boards.h"
> #include "hw/irq.h"
> -#include "hw/sysbus.h"
> -#include "system/system.h"
> #include "system/tpm.h"
> #include "system/tpm_backend.h"
> +#include "system/runstate.h"
> #include "hw/xen/xen-pvh-common.h"
> #include "trace.h"
>
> --
> 2.47.1
>
>
© 2016 - 2025 Red Hat, Inc.