[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v7 10/20] cpu-defs.h: Expose CPUTLBEntryFull to non-TCG code
From: |
Fabiano Rosas |
Subject: |
[PATCH v7 10/20] cpu-defs.h: Expose CPUTLBEntryFull to non-TCG code |
Date: |
Thu, 23 Feb 2023 10:08:31 -0300 |
This struct has no dependencies on TCG code and it is being used in
target/arm/ptw.c to simplify the passing around of page table walk
results. Those routines can be reached by KVM code via the gdbstub
breakpoint code, so take the structure out of CONFIG_TCG to make it
visible when building with --disable-tcg.
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
include/exec/cpu-defs.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
index 21309cf567..d5a4f30717 100644
--- a/include/exec/cpu-defs.h
+++ b/include/exec/cpu-defs.h
@@ -135,6 +135,10 @@ typedef struct CPUTLBEntry {
QEMU_BUILD_BUG_ON(sizeof(CPUTLBEntry) != (1 << CPU_TLB_ENTRY_BITS));
+
+#endif /* !CONFIG_USER_ONLY && CONFIG_TCG */
+
+#if !defined(CONFIG_USER_ONLY)
/*
* The full TLB entry, which is not accessed by generated TCG code,
* so the layout is not as critical as that of CPUTLBEntry. This is
@@ -176,7 +180,9 @@ typedef struct CPUTLBEntryFull {
TARGET_PAGE_ENTRY_EXTRA
#endif
} CPUTLBEntryFull;
+#endif /* !CONFIG_USER_ONLY */
+#if !defined(CONFIG_USER_ONLY) && defined(CONFIG_TCG)
/*
* Data elements that are per MMU mode, minus the bits accessed by
* the TCG fast path.
--
2.35.3
- [PATCH v7 00/20] target/arm: Allow CONFIG_TCG=n builds, Fabiano Rosas, 2023/02/23
- [PATCH v7 01/20] target/arm: Wrap breakpoint/watchpoint updates with tcg_enabled, Fabiano Rosas, 2023/02/23
- [PATCH v7 02/20] target/arm: Wrap TCG-only code in debug_helper.c, Fabiano Rosas, 2023/02/23
- [PATCH v7 03/20] target/arm: move translate modules to tcg/, Fabiano Rosas, 2023/02/23
- [PATCH v7 04/20] target/arm: move helpers to tcg/, Fabiano Rosas, 2023/02/23
- [PATCH v7 06/20] target/arm: Wrap arm_rebuild_hflags calls with tcg_enabled, Fabiano Rosas, 2023/02/23
- [PATCH v7 05/20] target/arm: Move psci.c into the tcg directory, Fabiano Rosas, 2023/02/23
- [PATCH v7 07/20] target/arm: Move hflags code into the tcg directory, Fabiano Rosas, 2023/02/23
- [PATCH v7 08/20] target/arm: Move regime_using_lpae_format into internal.h, Fabiano Rosas, 2023/02/23
- [PATCH v7 09/20] target/arm: Don't access TCG code when debugging with KVM, Fabiano Rosas, 2023/02/23
- [PATCH v7 10/20] cpu-defs.h: Expose CPUTLBEntryFull to non-TCG code,
Fabiano Rosas <=
- [PATCH v7 11/20] target/arm: Move cortex sysregs into a separate file, Fabiano Rosas, 2023/02/23
- [PATCH v7 12/20] target/arm: Move 64-bit TCG CPUs into tcg/, Fabiano Rosas, 2023/02/23
- [PATCH v7 14/20] target/arm: move cpu_tcg to tcg/cpu32.c, Fabiano Rosas, 2023/02/23
- [PATCH v7 13/20] target/arm: Move aa32_max_features out of cpu_tcg.c, Fabiano Rosas, 2023/02/23
- [PATCH v7 15/20] tests/avocado: Pass parameters to migration test, Fabiano Rosas, 2023/02/23
- [PATCH v7 16/20] tests/avocado: add machine:none tag to version.py, Fabiano Rosas, 2023/02/23
- [PATCH v7 17/20] arm/Kconfig: Always select SEMIHOSTING when TCG is present, Fabiano Rosas, 2023/02/23
- [PATCH v7 20/20] tests/qtest: Fix tests when no KVM or TCG are present, Fabiano Rosas, 2023/02/23
- [PATCH v7 19/20] gitlab-ci: Check building KVM-only aarch64 target, Fabiano Rosas, 2023/02/23
- [PATCH v7 18/20] arm/Kconfig: Do not build TCG-only boards on a KVM-only build, Fabiano Rosas, 2023/02/23