[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 00/13] exec: Rework around CPUState user fields (part 2)
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v2 00/13] exec: Rework around CPUState user fields (part 2) |
Date: |
Mon, 29 Apr 2024 23:30:37 +0200 |
Missing review: 1, 3, 4, 10
Since v1:
- First 13 patches queued
- Restrict qemu_plugin_vcpu_exit_hook() to (TCG) plugins
- Restrict cpu_plugin_mem_cbs_enabled() to TCG (plugins)
- Addressed Richard review comments on the others:
- Move cpu_plugin_mem_cbs_enabled()
- Do not move mem_io_pc, waiting for [*]
- Mention can_do_io restricted
Finish extracting TCG fields from CPUState:
- Extract tcg_cpu_exit() from cpu_exit()
- Introduce AccelOpsClass::exit_vcpu_thread()
- cpu_exit() calls exit_vcpu_thread=tcg_cpu_exit for TCG
- Forward declare TaskState and more uses of get_task_state()
- Introduce TCG AccelCPUState
- Move TCG specific fields from CPUState to AccelCPUState
- Restrict "exec/tlb-common.h" to TCG
- Restrict iommu_notifiers, icount to system emulation
[*]
20240416040609.1313605-3-richard.henderson@linaro.org/">https://lore.kernel.org/qemu-devel/20240416040609.1313605-3-richard.henderson@linaro.org/
Based-on: <20240428214915.10339-1-philmd@linaro.org>
Philippe Mathieu-Daudé (13):
accel/tcg: Restrict qemu_plugin_vcpu_exit_hook() to TCG plugins
accel/tcg: Restrict cpu_plugin_mem_cbs_enabled() to TCG
accel/tcg: Move @plugin_mem_cbs from CPUState to
CPUNegativeOffsetState
accel/tcg: Move @plugin_state from CPUState to TCG AccelCPUState
accel/tcg: Restrict IcountDecr / can_do_io / CPUTLB to TCG
accel/tcg: Move @jmp_env from CPUState to TCG AccelCPUState
accel/tcg: Move @cflags_next_tb from CPUState to TCG AccelCPUState
accel/tcg: Move @iommu_notifiers from CPUState to TCG AccelCPUState
accel/tcg: Move @tb_jmp_cache from CPUState to TCG AccelCPUState
accel/tcg: Remove NULL check in tcg_flush_jmp_cache()
accel/tcg: Move @tcg_cflags from CPUState to TCG AccelCPUState
accel/tcg: Restrict icount to system emulation
accel/tcg: Move icount fields from CPUState to TCG AccelCPUState
accel/tcg/internal-common.h | 18 ++++++++++
accel/tcg/tb-jmp-cache.h | 4 +--
accel/tcg/tcg-accel-ops.h | 1 +
accel/tcg/vcpu-state.h | 20 +++++++++++
include/exec/tlb-common.h | 4 +++
include/hw/core/cpu.h | 58 ++++++++------------------------
include/qemu/plugin.h | 2 +-
include/qemu/typedefs.h | 1 -
accel/tcg/cpu-exec-common.c | 2 +-
accel/tcg/cpu-exec.c | 51 +++++++++++++++-------------
accel/tcg/cputlb.c | 2 +-
accel/tcg/icount-common.c | 7 ++--
accel/tcg/plugin-gen.c | 9 +++--
accel/tcg/tb-maint.c | 6 ++--
accel/tcg/tcg-accel-ops-icount.c | 14 ++++----
accel/tcg/tcg-accel-ops.c | 2 ++
accel/tcg/translate-all.c | 9 ++---
accel/tcg/watchpoint.c | 5 +--
hw/core/cpu-common.c | 9 +++--
linux-user/main.c | 2 +-
plugins/core.c | 9 ++---
system/physmem.c | 37 +++++++++++++++-----
22 files changed, 157 insertions(+), 115 deletions(-)
--
2.41.0
- [PATCH v2 00/13] exec: Rework around CPUState user fields (part 2),
Philippe Mathieu-Daudé <=
- [PATCH v2 01/13] accel/tcg: Restrict qemu_plugin_vcpu_exit_hook() to TCG plugins, Philippe Mathieu-Daudé, 2024/04/29
- [PATCH v2 03/13] accel/tcg: Move @plugin_mem_cbs from CPUState to CPUNegativeOffsetState, Philippe Mathieu-Daudé, 2024/04/29
- [PATCH v2 02/13] accel/tcg: Restrict cpu_plugin_mem_cbs_enabled() to TCG, Philippe Mathieu-Daudé, 2024/04/29
- [PATCH v2 04/13] accel/tcg: Move @plugin_state from CPUState to TCG AccelCPUState, Philippe Mathieu-Daudé, 2024/04/29
- [PATCH v2 06/13] accel/tcg: Move @jmp_env from CPUState to TCG AccelCPUState, Philippe Mathieu-Daudé, 2024/04/29
- [PATCH v2 07/13] accel/tcg: Move @cflags_next_tb from CPUState to TCG AccelCPUState, Philippe Mathieu-Daudé, 2024/04/29
- [PATCH v2 05/13] accel/tcg: Restrict IcountDecr / can_do_io / CPUTLB to TCG, Philippe Mathieu-Daudé, 2024/04/29