[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 01/23] exec: Include 'cpu.h' before validating CPUArchState pl
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v2 01/23] exec: Include 'cpu.h' before validating CPUArchState placement |
Date: |
Tue, 12 Dec 2023 13:33:37 +0100 |
CPUArchState 'env' field is defined within the ArchCPU structure,
so we need to include each target "cpu.h" header which defines it.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Warner Losh <imp@bsdimp.com>
---
include/exec/cpu-all.h | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
index 5340907cfd..9a7b5737d3 100644
--- a/include/exec/cpu-all.h
+++ b/include/exec/cpu-all.h
@@ -411,10 +411,6 @@ static inline bool tlb_hit(uint64_t tlb_addr, vaddr addr)
/* accel/tcg/cpu-exec.c */
int cpu_exec(CPUState *cpu);
-/* Validate correct placement of CPUArchState. */
-QEMU_BUILD_BUG_ON(offsetof(ArchCPU, parent_obj) != 0);
-QEMU_BUILD_BUG_ON(offsetof(ArchCPU, env) != sizeof(CPUState));
-
/**
* env_archcpu(env)
* @env: The architecture environment
@@ -437,4 +433,9 @@ static inline CPUState *env_cpu(CPUArchState *env)
return (void *)env - sizeof(CPUState);
}
+/* Validate correct placement of CPUArchState. */
+#include "cpu.h"
+QEMU_BUILD_BUG_ON(offsetof(ArchCPU, parent_obj) != 0);
+QEMU_BUILD_BUG_ON(offsetof(ArchCPU, env) != sizeof(CPUState));
+
#endif /* CPU_ALL_H */
--
2.41.0
- [PATCH v2 00/23] exec: Rework of various headers (user focused), Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 01/23] exec: Include 'cpu.h' before validating CPUArchState placement,
Philippe Mathieu-Daudé <=
- [PATCH v2 02/23] exec: Expose 'target_page.h' API to user emulation, Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 03/23] target: Define TCG_GUEST_DEFAULT_MO in 'cpu-param.h', Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 04/23] accel: Include missing 'exec/cpu_ldst.h' header, Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 06/23] semihosting/uaccess: Avoid including 'cpu.h', Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 07/23] semihosting/guestfd: Remove unused 'semihosting/uaccess.h' header, Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 05/23] gdbstub: Include missing 'hw/core/cpu.h' header, Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 09/23] host/atomic128: Include missing 'qemu/atomic.h' header, Philippe Mathieu-Daudé, 2023/12/12
- [PATCH v2 08/23] host/load-extract: Include missing 'qemu/atomic.h' and 'qemu/int128.h', Philippe Mathieu-Daudé, 2023/12/12