From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
"Anton Johansson" <anjo@rev.ng>,
qemu-devel@nongnu.org
Cc: qemu-ppc@nongnu.org, "Thomas Huth" <thuth@redhat.com>,
qemu-arm@nongnu.org, "Peter Xu" <peterx@redhat.com>,
qemu-riscv@nongnu.org, "David Hildenbrand" <david@redhat.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Alex Bennée" <alex.bennee@linaro.org>,
qemu-s390x@nongnu.org
Subject: Re: [PATCH 18/24] exec: Declare tlb_flush*() in 'exec/cputlb.h'
Date: Wed, 13 Nov 2024 20:14:26 -0800 [thread overview]
Message-ID: <d64523fc-03d3-451c-b646-4c31a25b473a@linaro.org> (raw)
In-Reply-To: <20241114011310.3615-19-philmd@linaro.org>
On 11/13/24 17:13, Philippe Mathieu-Daudé wrote:
> Move CPU TLB related methods to "exec/cputlb.h".
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> include/exec/cputlb.h | 187 +++++++++++++++++++++++++++
> include/exec/exec-all.h | 183 --------------------------
> accel/tcg/tcg-accel-ops.c | 1 +
> cpu-target.c | 1 +
> hw/intc/armv7m_nvic.c | 2 +-
> hw/ppc/spapr_nested.c | 1 +
> hw/sh4/sh7750.c | 1 +
> system/watchpoint.c | 2 +-
> target/alpha/helper.c | 2 +-
> target/alpha/sys_helper.c | 2 +-
> target/arm/helper.c | 1 +
> target/avr/helper.c | 2 +-
> target/hppa/mem_helper.c | 1 +
> target/i386/helper.c | 1 +
> target/i386/machine.c | 2 +-
> target/i386/tcg/fpu_helper.c | 2 +-
> target/i386/tcg/misc_helper.c | 2 +-
> target/i386/tcg/sysemu/misc_helper.c | 2 +-
> target/i386/tcg/sysemu/svm_helper.c | 2 +-
> target/loongarch/tcg/csr_helper.c | 2 +-
> target/loongarch/tcg/tlb_helper.c | 2 +-
> target/m68k/helper.c | 2 +-
> target/microblaze/mmu.c | 2 +-
> target/mips/sysemu/cp0.c | 2 +-
> target/mips/tcg/sysemu/cp0_helper.c | 2 +-
> target/mips/tcg/sysemu/tlb_helper.c | 2 +-
> target/openrisc/mmu.c | 2 +-
> target/openrisc/sys_helper.c | 1 +
> target/ppc/helper_regs.c | 2 +-
> target/ppc/misc_helper.c | 1 +
> target/ppc/mmu_helper.c | 1 +
> target/riscv/cpu_helper.c | 2 +-
> target/riscv/csr.c | 1 +
> target/riscv/op_helper.c | 1 +
> target/riscv/pmp.c | 2 +-
> target/rx/cpu.c | 2 +-
> target/s390x/gdbstub.c | 2 +-
> target/s390x/sigp.c | 2 +-
> target/s390x/tcg/excp_helper.c | 1 +
> target/s390x/tcg/mem_helper.c | 1 +
> target/s390x/tcg/misc_helper.c | 1 +
> target/sh4/helper.c | 2 +-
> target/sparc/ldst_helper.c | 1 +
> target/tricore/helper.c | 2 +-
> target/xtensa/helper.c | 2 +-
> target/xtensa/mmu_helper.c | 1 +
> 46 files changed, 231 insertions(+), 210 deletions(-)
>
> diff --git a/include/exec/cputlb.h b/include/exec/cputlb.h
> index 9075d94ec5..07c4bc669e 100644
> --- a/include/exec/cputlb.h
> +++ b/include/exec/cputlb.h
> @@ -39,6 +39,141 @@ void tlb_init(CPUState *cpu);
> */
> void tlb_destroy(CPUState *cpu);
>
> +/**
> + * tlb_flush_page:
> + * @cpu: CPU whose TLB should be flushed
> + * @addr: virtual address of page to be flushed
> + *
> + * Flush one page from the TLB of the specified CPU, for all
> + * MMU indexes.
> + */
> +void tlb_flush_page(CPUState *cpu, vaddr addr);
> +
> +/**
> + * tlb_flush_page_all_cpus_synced:
> + * @cpu: src CPU of the flush
> + * @addr: virtual address of page to be flushed
> + *
> + * Flush one page from the TLB of all CPUs, for all
> + * MMU indexes.
> + *
> + * When this function returns, no CPUs will subsequently perform
> + * translations using the flushed TLBs.
> + */
> +void tlb_flush_page_all_cpus_synced(CPUState *src, vaddr addr);
> +
> +/**
> + * tlb_flush:
> + * @cpu: CPU whose TLB should be flushed
> + *
> + * Flush the entire TLB for the specified CPU. Most CPU architectures
> + * allow the implementation to drop entries from the TLB at any time
> + * so this is generally safe. If more selective flushing is required
> + * use one of the other functions for efficiency.
> + */
> +void tlb_flush(CPUState *cpu);
> +
> +/**
> + * tlb_flush_all_cpus_synced:
> + * @cpu: src CPU of the flush
> + *
> + * Flush the entire TLB for all CPUs, for all MMU indexes.
> + *
> + * When this function returns, no CPUs will subsequently perform
> + * translations using the flushed TLBs.
> + */
> +void tlb_flush_all_cpus_synced(CPUState *src_cpu);
> +
> +/**
> + * tlb_flush_page_by_mmuidx:
> + * @cpu: CPU whose TLB should be flushed
> + * @addr: virtual address of page to be flushed
> + * @idxmap: bitmap of MMU indexes to flush
> + *
> + * Flush one page from the TLB of the specified CPU, for the specified
> + * MMU indexes.
> + */
> +void tlb_flush_page_by_mmuidx(CPUState *cpu, vaddr addr,
> + uint16_t idxmap);
> +
> +/**
> + * tlb_flush_page_by_mmuidx_all_cpus_synced:
> + * @cpu: Originating CPU of the flush
> + * @addr: virtual address of page to be flushed
> + * @idxmap: bitmap of MMU indexes to flush
> + *
> + * Flush one page from the TLB of all CPUs, for the specified
> + * MMU indexes.
> + *
> + * When this function returns, no CPUs will subsequently perform
> + * translations using the flushed TLBs.
> + */
> +void tlb_flush_page_by_mmuidx_all_cpus_synced(CPUState *cpu, vaddr addr,
> + uint16_t idxmap);
> +
> +/**
> + * tlb_flush_by_mmuidx:
> + * @cpu: CPU whose TLB should be flushed
> + * @wait: If true ensure synchronisation by exiting the cpu_loop
> + * @idxmap: bitmap of MMU indexes to flush
> + *
> + * Flush all entries from the TLB of the specified CPU, for the specified
> + * MMU indexes.
> + */
> +void tlb_flush_by_mmuidx(CPUState *cpu, uint16_t idxmap);
> +
> +/**
> + * tlb_flush_by_mmuidx_all_cpus_synced:
> + * @cpu: Originating CPU of the flush
> + * @idxmap: bitmap of MMU indexes to flush
> + *
> + * Flush all entries from the TLB of all CPUs, for the specified
> + * MMU indexes.
> + *
> + * When this function returns, no CPUs will subsequently perform
> + * translations using the flushed TLBs.
> + */
> +void tlb_flush_by_mmuidx_all_cpus_synced(CPUState *cpu, uint16_t idxmap);
> +
> +/**
> + * tlb_flush_page_bits_by_mmuidx
> + * @cpu: CPU whose TLB should be flushed
> + * @addr: virtual address of page to be flushed
> + * @idxmap: bitmap of mmu indexes to flush
> + * @bits: number of significant bits in address
> + *
> + * Similar to tlb_flush_page_mask, but with a bitmap of indexes.
> + */
> +void tlb_flush_page_bits_by_mmuidx(CPUState *cpu, vaddr addr,
> + uint16_t idxmap, unsigned bits);
> +
> +/* Similarly, with broadcast and syncing. */
> +void tlb_flush_page_bits_by_mmuidx_all_cpus_synced(CPUState *cpu, vaddr addr,
> + uint16_t idxmap,
> + unsigned bits);
> +
> +/**
> + * tlb_flush_range_by_mmuidx
> + * @cpu: CPU whose TLB should be flushed
> + * @addr: virtual address of the start of the range to be flushed
> + * @len: length of range to be flushed
> + * @idxmap: bitmap of mmu indexes to flush
> + * @bits: number of significant bits in address
> + *
> + * For each mmuidx in @idxmap, flush all pages within [@addr,@addr+@len),
> + * comparing only the low @bits worth of each virtual page.
> + */
> +void tlb_flush_range_by_mmuidx(CPUState *cpu, vaddr addr,
> + vaddr len, uint16_t idxmap,
> + unsigned bits);
> +
> +/* Similarly, with broadcast and syncing. */
> +void tlb_flush_range_by_mmuidx_all_cpus_synced(CPUState *cpu,
> + vaddr addr,
> + vaddr len,
> + uint16_t idxmap,
> + unsigned bits);
> +
> void tlb_protect_code(ram_addr_t ram_addr);
> void tlb_unprotect_code(ram_addr_t ram_addr);
>
> @@ -50,6 +185,58 @@ static inline void tlb_init(CPUState *cpu)
> static inline void tlb_destroy(CPUState *cpu)
> {
> }
> +static inline void tlb_flush_page(CPUState *cpu, vaddr addr)
> +{
> +}
> +static inline void tlb_flush_page_all_cpus_synced(CPUState *src, vaddr addr)
> +{
> +}
> +static inline void tlb_flush(CPUState *cpu)
> +{
> +}
> +static inline void tlb_flush_all_cpus_synced(CPUState *src_cpu)
> +{
> +}
> +static inline void tlb_flush_page_by_mmuidx(CPUState *cpu,
> + vaddr addr, uint16_t idxmap)
> +{
> +}
> +
> +static inline void tlb_flush_by_mmuidx(CPUState *cpu, uint16_t idxmap)
> +{
> +}
> +static inline void tlb_flush_page_by_mmuidx_all_cpus_synced(CPUState *cpu,
> + vaddr addr,
> + uint16_t idxmap)
> +{
> +}
> +static inline void tlb_flush_by_mmuidx_all_cpus_synced(CPUState *cpu,
> + uint16_t idxmap)
> +{
> +}
> +static inline void tlb_flush_page_bits_by_mmuidx(CPUState *cpu,
> + vaddr addr,
> + uint16_t idxmap,
> + unsigned bits)
> +{
> +}
> +static inline void
> +tlb_flush_page_bits_by_mmuidx_all_cpus_synced(CPUState *cpu, vaddr addr,
> + uint16_t idxmap, unsigned bits)
> +{
> +}
> +static inline void tlb_flush_range_by_mmuidx(CPUState *cpu, vaddr addr,
> + vaddr len, uint16_t idxmap,
> + unsigned bits)
> +{
> +}
> +static inline void tlb_flush_range_by_mmuidx_all_cpus_synced(CPUState *cpu,
> + vaddr addr,
> + vaddr len,
> + uint16_t idxmap,
> + unsigned bits)
> +{
> +}
>
> #endif /* CONFIG_TCG && !CONFIG_USER_ONLY */
>
> diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
> index 2e58540005..36dbc191cd 100644
> --- a/include/exec/exec-all.h
> +++ b/include/exec/exec-all.h
> @@ -46,189 +46,6 @@ static inline bool cpu_loop_exit_requested(CPUState *cpu)
> return (int32_t)qatomic_read(&cpu->neg.icount_decr.u32) < 0;
> }
>
> -#if !defined(CONFIG_USER_ONLY) && defined(CONFIG_TCG)
> -/**
> - * tlb_flush_page:
> - * @cpu: CPU whose TLB should be flushed
> - * @addr: virtual address of page to be flushed
> - *
> - * Flush one page from the TLB of the specified CPU, for all
> - * MMU indexes.
> - */
> -void tlb_flush_page(CPUState *cpu, vaddr addr);
> -/**
> - * tlb_flush_page_all_cpus_synced:
> - * @cpu: src CPU of the flush
> - * @addr: virtual address of page to be flushed
> - *
> - * Flush one page from the TLB of all CPUs, for all
> - * MMU indexes.
> - *
> - * When this function returns, no CPUs will subsequently perform
> - * translations using the flushed TLBs.
> - */
> -void tlb_flush_page_all_cpus_synced(CPUState *src, vaddr addr);
> -/**
> - * tlb_flush:
> - * @cpu: CPU whose TLB should be flushed
> - *
> - * Flush the entire TLB for the specified CPU. Most CPU architectures
> - * allow the implementation to drop entries from the TLB at any time
> - * so this is generally safe. If more selective flushing is required
> - * use one of the other functions for efficiency.
> - */
> -void tlb_flush(CPUState *cpu);
> -/**
> - * tlb_flush_all_cpus_synced:
> - * @cpu: src CPU of the flush
> - *
> - * Flush the entire TLB for all CPUs, for all MMU indexes.
> - *
> - * When this function returns, no CPUs will subsequently perform
> - * translations using the flushed TLBs.
> - */
> -void tlb_flush_all_cpus_synced(CPUState *src_cpu);
> -/**
> - * tlb_flush_page_by_mmuidx:
> - * @cpu: CPU whose TLB should be flushed
> - * @addr: virtual address of page to be flushed
> - * @idxmap: bitmap of MMU indexes to flush
> - *
> - * Flush one page from the TLB of the specified CPU, for the specified
> - * MMU indexes.
> - */
> -void tlb_flush_page_by_mmuidx(CPUState *cpu, vaddr addr,
> - uint16_t idxmap);
> -/**
> - * tlb_flush_page_by_mmuidx_all_cpus_synced:
> - * @cpu: Originating CPU of the flush
> - * @addr: virtual address of page to be flushed
> - * @idxmap: bitmap of MMU indexes to flush
> - *
> - * Flush one page from the TLB of all CPUs, for the specified
> - * MMU indexes.
> - *
> - * When this function returns, no CPUs will subsequently perform
> - * translations using the flushed TLBs.
> - */
> -void tlb_flush_page_by_mmuidx_all_cpus_synced(CPUState *cpu, vaddr addr,
> - uint16_t idxmap);
> -/**
> - * tlb_flush_by_mmuidx:
> - * @cpu: CPU whose TLB should be flushed
> - * @wait: If true ensure synchronisation by exiting the cpu_loop
> - * @idxmap: bitmap of MMU indexes to flush
> - *
> - * Flush all entries from the TLB of the specified CPU, for the specified
> - * MMU indexes.
> - */
> -void tlb_flush_by_mmuidx(CPUState *cpu, uint16_t idxmap);
> -/**
> - * tlb_flush_by_mmuidx_all_cpus_synced:
> - * @cpu: Originating CPU of the flush
> - * @idxmap: bitmap of MMU indexes to flush
> - *
> - * Flush all entries from the TLB of all CPUs, for the specified
> - * MMU indexes.
> - *
> - * When this function returns, no CPUs will subsequently perform
> - * translations using the flushed TLBs.
> - */
> -void tlb_flush_by_mmuidx_all_cpus_synced(CPUState *cpu, uint16_t idxmap);
> -
> -/**
> - * tlb_flush_page_bits_by_mmuidx
> - * @cpu: CPU whose TLB should be flushed
> - * @addr: virtual address of page to be flushed
> - * @idxmap: bitmap of mmu indexes to flush
> - * @bits: number of significant bits in address
> - *
> - * Similar to tlb_flush_page_mask, but with a bitmap of indexes.
> - */
> -void tlb_flush_page_bits_by_mmuidx(CPUState *cpu, vaddr addr,
> - uint16_t idxmap, unsigned bits);
> -
> -/* Similarly, with broadcast and syncing. */
> -void tlb_flush_page_bits_by_mmuidx_all_cpus_synced
> - (CPUState *cpu, vaddr addr, uint16_t idxmap, unsigned bits);
> -
> -/**
> - * tlb_flush_range_by_mmuidx
> - * @cpu: CPU whose TLB should be flushed
> - * @addr: virtual address of the start of the range to be flushed
> - * @len: length of range to be flushed
> - * @idxmap: bitmap of mmu indexes to flush
> - * @bits: number of significant bits in address
> - *
> - * For each mmuidx in @idxmap, flush all pages within [@addr,@addr+@len),
> - * comparing only the low @bits worth of each virtual page.
> - */
> -void tlb_flush_range_by_mmuidx(CPUState *cpu, vaddr addr,
> - vaddr len, uint16_t idxmap,
> - unsigned bits);
> -
> -/* Similarly, with broadcast and syncing. */
> -void tlb_flush_range_by_mmuidx_all_cpus_synced(CPUState *cpu,
> - vaddr addr,
> - vaddr len,
> - uint16_t idxmap,
> - unsigned bits);
> -
> -#else
> -static inline void tlb_flush_page(CPUState *cpu, vaddr addr)
> -{
> -}
> -static inline void tlb_flush_page_all_cpus_synced(CPUState *src, vaddr addr)
> -{
> -}
> -static inline void tlb_flush(CPUState *cpu)
> -{
> -}
> -static inline void tlb_flush_all_cpus_synced(CPUState *src_cpu)
> -{
> -}
> -static inline void tlb_flush_page_by_mmuidx(CPUState *cpu,
> - vaddr addr, uint16_t idxmap)
> -{
> -}
> -
> -static inline void tlb_flush_by_mmuidx(CPUState *cpu, uint16_t idxmap)
> -{
> -}
> -static inline void tlb_flush_page_by_mmuidx_all_cpus_synced(CPUState *cpu,
> - vaddr addr,
> - uint16_t idxmap)
> -{
> -}
> -static inline void tlb_flush_by_mmuidx_all_cpus_synced(CPUState *cpu,
> - uint16_t idxmap)
> -{
> -}
> -static inline void tlb_flush_page_bits_by_mmuidx(CPUState *cpu,
> - vaddr addr,
> - uint16_t idxmap,
> - unsigned bits)
> -{
> -}
> -static inline void
> -tlb_flush_page_bits_by_mmuidx_all_cpus_synced(CPUState *cpu, vaddr addr,
> - uint16_t idxmap, unsigned bits)
> -{
> -}
> -static inline void tlb_flush_range_by_mmuidx(CPUState *cpu, vaddr addr,
> - vaddr len, uint16_t idxmap,
> - unsigned bits)
> -{
> -}
> -static inline void tlb_flush_range_by_mmuidx_all_cpus_synced(CPUState *cpu,
> - vaddr addr,
> - vaddr len,
> - uint16_t idxmap,
> - unsigned bits)
> -{
> -}
> -#endif
> -
> #if defined(CONFIG_TCG)
>
> /**
> diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c
> index 22486c5dff..663831700d 100644
> --- a/accel/tcg/tcg-accel-ops.c
> +++ b/accel/tcg/tcg-accel-ops.c
> @@ -33,6 +33,7 @@
> #include "qemu/guest-random.h"
> #include "qemu/timer.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/hwaddr.h"
> #include "exec/tb-flush.h"
> #include "exec/translation-block.h"
> diff --git a/cpu-target.c b/cpu-target.c
> index 499facf774..63d563cd0b 100644
> --- a/cpu-target.c
> +++ b/cpu-target.c
> @@ -40,6 +40,7 @@
> #include "exec/replay-core.h"
> #include "exec/cpu-common.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/tb-flush.h"
> #include "exec/translate-all.h"
> #include "exec/log.h"
> diff --git a/hw/intc/armv7m_nvic.c b/hw/intc/armv7m_nvic.c
> index 98f3cf59bc..b0a638e035 100644
> --- a/hw/intc/armv7m_nvic.c
> +++ b/hw/intc/armv7m_nvic.c
> @@ -22,7 +22,7 @@
> #include "sysemu/runstate.h"
> #include "target/arm/cpu.h"
> #include "target/arm/cpu-features.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/memop.h"
> #include "qemu/log.h"
> #include "qemu/module.h"
> diff --git a/hw/ppc/spapr_nested.c b/hw/ppc/spapr_nested.c
> index 7def8eb73b..23958c6383 100644
> --- a/hw/ppc/spapr_nested.c
> +++ b/hw/ppc/spapr_nested.c
> @@ -1,6 +1,7 @@
> #include "qemu/osdep.h"
> #include "qemu/cutils.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "helper_regs.h"
> #include "hw/ppc/ppc.h"
> #include "hw/ppc/spapr.h"
> diff --git a/hw/sh4/sh7750.c b/hw/sh4/sh7750.c
> index 8041b3b651..9692d5b624 100644
> --- a/hw/sh4/sh7750.c
> +++ b/hw/sh4/sh7750.c
> @@ -36,6 +36,7 @@
> #include "hw/sh4/sh_intc.h"
> #include "hw/timer/tmu012.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "trace.h"
>
> typedef struct SH7750State {
> diff --git a/system/watchpoint.c b/system/watchpoint.c
> index f7366574a3..622463e11b 100644
> --- a/system/watchpoint.c
> +++ b/system/watchpoint.c
> @@ -19,8 +19,8 @@
>
> #include "qemu/osdep.h"
> #include "qemu/error-report.h"
> -#include "exec/exec-all.h"
> #include "exec/cpu-all.h"
> +#include "exec/cputlb.h"
> #include "hw/core/cpu.h"
>
> /* Add a watchpoint. */
> diff --git a/target/alpha/helper.c b/target/alpha/helper.c
> index 2f1000c99f..57cefcba14 100644
> --- a/target/alpha/helper.c
> +++ b/target/alpha/helper.c
> @@ -20,7 +20,7 @@
> #include "qemu/osdep.h"
> #include "qemu/log.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "fpu/softfloat-types.h"
> #include "exec/helper-proto.h"
> diff --git a/target/alpha/sys_helper.c b/target/alpha/sys_helper.c
> index 768116ef32..95cf3d2560 100644
> --- a/target/alpha/sys_helper.c
> +++ b/target/alpha/sys_helper.c
> @@ -19,7 +19,7 @@
>
> #include "qemu/osdep.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/tb-flush.h"
> #include "exec/helper-proto.h"
> #include "sysemu/runstate.h"
> diff --git a/target/arm/helper.c b/target/arm/helper.c
> index f38eb054c0..c2e400643a 100644
> --- a/target/arm/helper.c
> +++ b/target/arm/helper.c
> @@ -19,6 +19,7 @@
> #include "qemu/crc32c.h"
> #include "qemu/qemu-print.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include <zlib.h> /* for crc32 */
> #include "hw/irq.h"
> #include "sysemu/cpu-timers.h"
> diff --git a/target/avr/helper.c b/target/avr/helper.c
> index 345708a1b3..f255126016 100644
> --- a/target/avr/helper.c
> +++ b/target/avr/helper.c
> @@ -23,7 +23,7 @@
> #include "qemu/error-report.h"
> #include "cpu.h"
> #include "hw/core/tcg-cpu-ops.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/cpu_ldst.h"
> #include "exec/address-spaces.h"
> diff --git a/target/hppa/mem_helper.c b/target/hppa/mem_helper.c
> index b8c3e55170..7a1729ccd2 100644
> --- a/target/hppa/mem_helper.c
> +++ b/target/hppa/mem_helper.c
> @@ -21,6 +21,7 @@
> #include "qemu/log.h"
> #include "cpu.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/helper-proto.h"
> #include "hw/core/cpu.h"
> diff --git a/target/i386/helper.c b/target/i386/helper.c
> index 75c52e2143..84a17172ba 100644
> --- a/target/i386/helper.c
> +++ b/target/i386/helper.c
> @@ -21,6 +21,7 @@
> #include "qapi/qapi-events-run-state.h"
> #include "cpu.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/translation-block.h"
> #include "sysemu/runstate.h"
> #ifndef CONFIG_USER_ONLY
> diff --git a/target/i386/machine.c b/target/i386/machine.c
> index b4610325aa..2a08b26a4b 100644
> --- a/target/i386/machine.c
> +++ b/target/i386/machine.c
> @@ -1,6 +1,6 @@
> #include "qemu/osdep.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "hw/isa/isa.h"
> #include "migration/cpu.h"
> #include "kvm/hyperv.h"
> diff --git a/target/i386/tcg/fpu_helper.c b/target/i386/tcg/fpu_helper.c
> index 53b49bb297..868d12381f 100644
> --- a/target/i386/tcg/fpu_helper.c
> +++ b/target/i386/tcg/fpu_helper.c
> @@ -21,7 +21,7 @@
> #include <math.h>
> #include "cpu.h"
> #include "tcg-cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/cpu_ldst.h"
> #include "exec/helper-proto.h"
> #include "fpu/softfloat.h"
> diff --git a/target/i386/tcg/misc_helper.c b/target/i386/tcg/misc_helper.c
> index ed4cda8001..2b5f092a23 100644
> --- a/target/i386/tcg/misc_helper.c
> +++ b/target/i386/tcg/misc_helper.c
> @@ -21,7 +21,7 @@
> #include "qemu/log.h"
> #include "cpu.h"
> #include "exec/helper-proto.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "helper-tcg.h"
>
> /*
> diff --git a/target/i386/tcg/sysemu/misc_helper.c b/target/i386/tcg/sysemu/misc_helper.c
> index 094aa56a20..75cd592267 100644
> --- a/target/i386/tcg/sysemu/misc_helper.c
> +++ b/target/i386/tcg/sysemu/misc_helper.c
> @@ -23,7 +23,7 @@
> #include "exec/helper-proto.h"
> #include "exec/cpu_ldst.h"
> #include "exec/address-spaces.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "tcg/helper-tcg.h"
> #include "hw/i386/apic.h"
>
> diff --git a/target/i386/tcg/sysemu/svm_helper.c b/target/i386/tcg/sysemu/svm_helper.c
> index 9db8ad62a0..0def3afb14 100644
> --- a/target/i386/tcg/sysemu/svm_helper.c
> +++ b/target/i386/tcg/sysemu/svm_helper.c
> @@ -21,7 +21,7 @@
> #include "qemu/log.h"
> #include "cpu.h"
> #include "exec/helper-proto.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/cpu_ldst.h"
> #include "tcg/helper-tcg.h"
>
> diff --git a/target/loongarch/tcg/csr_helper.c b/target/loongarch/tcg/csr_helper.c
> index 15f94caefa..d486b8f23b 100644
> --- a/target/loongarch/tcg/csr_helper.c
> +++ b/target/loongarch/tcg/csr_helper.c
> @@ -11,7 +11,7 @@
> #include "internals.h"
> #include "qemu/host-utils.h"
> #include "exec/helper-proto.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/cpu_ldst.h"
> #include "hw/irq.h"
> #include "cpu-csr.h"
> diff --git a/target/loongarch/tcg/tlb_helper.c b/target/loongarch/tcg/tlb_helper.c
> index 97f38fc391..40603202e5 100644
> --- a/target/loongarch/tcg/tlb_helper.c
> +++ b/target/loongarch/tcg/tlb_helper.c
> @@ -12,7 +12,7 @@
> #include "cpu.h"
> #include "internals.h"
> #include "exec/helper-proto.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/cpu_ldst.h"
> #include "exec/log.h"
> diff --git a/target/m68k/helper.c b/target/m68k/helper.c
> index 9bfc6ae97c..fc8ea87ddb 100644
> --- a/target/m68k/helper.c
> +++ b/target/m68k/helper.c
> @@ -20,7 +20,7 @@
>
> #include "qemu/osdep.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/gdbstub.h"
> #include "exec/helper-proto.h"
> diff --git a/target/microblaze/mmu.c b/target/microblaze/mmu.c
> index 2423ac6172..f8587d5ac4 100644
> --- a/target/microblaze/mmu.c
> +++ b/target/microblaze/mmu.c
> @@ -21,7 +21,7 @@
> #include "qemu/osdep.h"
> #include "qemu/log.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
>
> static unsigned int tlb_decode_size(unsigned int f)
> diff --git a/target/mips/sysemu/cp0.c b/target/mips/sysemu/cp0.c
> index bae37f515b..ff7d3db00c 100644
> --- a/target/mips/sysemu/cp0.c
> +++ b/target/mips/sysemu/cp0.c
> @@ -21,7 +21,7 @@
> #include "qemu/osdep.h"
> #include "cpu.h"
> #include "internal.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
>
> /* Called for updates to CP0_Status. */
> void sync_c0_status(CPUMIPSState *env, CPUMIPSState *cpu, int tc)
> diff --git a/target/mips/tcg/sysemu/cp0_helper.c b/target/mips/tcg/sysemu/cp0_helper.c
> index 79a5c833ce..01a07a169f 100644
> --- a/target/mips/tcg/sysemu/cp0_helper.c
> +++ b/target/mips/tcg/sysemu/cp0_helper.c
> @@ -27,7 +27,7 @@
> #include "internal.h"
> #include "qemu/host-utils.h"
> #include "exec/helper-proto.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
>
>
> /* SMP helpers. */
> diff --git a/target/mips/tcg/sysemu/tlb_helper.c b/target/mips/tcg/sysemu/tlb_helper.c
> index e98bb95951..b545d49a6b 100644
> --- a/target/mips/tcg/sysemu/tlb_helper.c
> +++ b/target/mips/tcg/sysemu/tlb_helper.c
> @@ -21,7 +21,7 @@
>
> #include "cpu.h"
> #include "internal.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/cpu_ldst.h"
> #include "exec/log.h"
> diff --git a/target/openrisc/mmu.c b/target/openrisc/mmu.c
> index c632d5230b..47ac783c52 100644
> --- a/target/openrisc/mmu.c
> +++ b/target/openrisc/mmu.c
> @@ -21,7 +21,7 @@
> #include "qemu/osdep.h"
> #include "qemu/log.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "gdbstub/helpers.h"
> #include "qemu/host-utils.h"
> diff --git a/target/openrisc/sys_helper.c b/target/openrisc/sys_helper.c
> index 77567afba4..21bc137ccc 100644
> --- a/target/openrisc/sys_helper.c
> +++ b/target/openrisc/sys_helper.c
> @@ -21,6 +21,7 @@
> #include "qemu/osdep.h"
> #include "cpu.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/helper-proto.h"
> #include "exception.h"
> #ifndef CONFIG_USER_ONLY
> diff --git a/target/ppc/helper_regs.c b/target/ppc/helper_regs.c
> index 42c681ca4a..61432c165b 100644
> --- a/target/ppc/helper_regs.c
> +++ b/target/ppc/helper_regs.c
> @@ -20,7 +20,7 @@
> #include "qemu/osdep.h"
> #include "cpu.h"
> #include "qemu/main-loop.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "sysemu/kvm.h"
> #include "sysemu/tcg.h"
> #include "helper_regs.h"
> diff --git a/target/ppc/misc_helper.c b/target/ppc/misc_helper.c
> index f0ca80153b..e379da6010 100644
> --- a/target/ppc/misc_helper.c
> +++ b/target/ppc/misc_helper.c
> @@ -21,6 +21,7 @@
> #include "qemu/log.h"
> #include "cpu.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/helper-proto.h"
> #include "qemu/error-report.h"
> #include "qemu/main-loop.h"
> diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c
> index b167b37e0a..718070b600 100644
> --- a/target/ppc/mmu_helper.c
> +++ b/target/ppc/mmu_helper.c
> @@ -24,6 +24,7 @@
> #include "kvm_ppc.h"
> #include "mmu-hash64.h"
> #include "mmu-hash32.h"
> +#include "exec/cputlb.h"
> #include "exec/exec-all.h"
> #include "exec/page-protection.h"
> #include "exec/log.h"
> diff --git a/target/riscv/cpu_helper.c b/target/riscv/cpu_helper.c
> index 0a3ead69ea..767db4a5cc 100644
> --- a/target/riscv/cpu_helper.c
> +++ b/target/riscv/cpu_helper.c
> @@ -23,7 +23,7 @@
> #include "cpu.h"
> #include "internals.h"
> #include "pmu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "instmap.h"
> #include "tcg/tcg-op.h"
> diff --git a/target/riscv/csr.c b/target/riscv/csr.c
> index 9846770820..9e1c4ab0e7 100644
> --- a/target/riscv/csr.c
> +++ b/target/riscv/csr.c
> @@ -25,6 +25,7 @@
> #include "pmu.h"
> #include "time_helper.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/tb-flush.h"
> #include "sysemu/cpu-timers.h"
> #include "qemu/guest-random.h"
> diff --git a/target/riscv/op_helper.c b/target/riscv/op_helper.c
> index eddedacf4b..212ba97408 100644
> --- a/target/riscv/op_helper.c
> +++ b/target/riscv/op_helper.c
> @@ -22,6 +22,7 @@
> #include "cpu.h"
> #include "internals.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/cpu_ldst.h"
> #include "exec/helper-proto.h"
>
> diff --git a/target/riscv/pmp.c b/target/riscv/pmp.c
> index a1b36664fc..1bf962cf1b 100644
> --- a/target/riscv/pmp.c
> +++ b/target/riscv/pmp.c
> @@ -24,7 +24,7 @@
> #include "qapi/error.h"
> #include "cpu.h"
> #include "trace.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
>
> static bool pmp_write_cfg(CPURISCVState *env, uint32_t addr_index,
> diff --git a/target/rx/cpu.c b/target/rx/cpu.c
> index 945ae6e9e5..add51d4477 100644
> --- a/target/rx/cpu.c
> +++ b/target/rx/cpu.c
> @@ -21,7 +21,7 @@
> #include "qapi/error.h"
> #include "cpu.h"
> #include "migration/vmstate.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/translation-block.h"
> #include "hw/loader.h"
> diff --git a/target/s390x/gdbstub.c b/target/s390x/gdbstub.c
> index 63373f02ce..865313c98f 100644
> --- a/target/s390x/gdbstub.c
> +++ b/target/s390x/gdbstub.c
> @@ -21,7 +21,7 @@
> #include "qemu/osdep.h"
> #include "cpu.h"
> #include "s390x-internal.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/gdbstub.h"
> #include "gdbstub/helpers.h"
> #include "qemu/bitops.h"
> diff --git a/target/s390x/sigp.c b/target/s390x/sigp.c
> index 08aaecf12b..0d18f14251 100644
> --- a/target/s390x/sigp.c
> +++ b/target/s390x/sigp.c
> @@ -15,7 +15,7 @@
> #include "sysemu/hw_accel.h"
> #include "sysemu/runstate.h"
> #include "exec/address-spaces.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "sysemu/tcg.h"
> #include "trace.h"
> #include "qapi/qapi-types-machine.h"
> diff --git a/target/s390x/tcg/excp_helper.c b/target/s390x/tcg/excp_helper.c
> index 4c0b692c9e..003ed86413 100644
> --- a/target/s390x/tcg/excp_helper.c
> +++ b/target/s390x/tcg/excp_helper.c
> @@ -23,6 +23,7 @@
> #include "cpu.h"
> #include "exec/helper-proto.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "s390x-internal.h"
> #include "tcg_s390x.h"
> #ifndef CONFIG_USER_ONLY
> diff --git a/target/s390x/tcg/mem_helper.c b/target/s390x/tcg/mem_helper.c
> index 0e12dae2aa..2ad54d7133 100644
> --- a/target/s390x/tcg/mem_helper.c
> +++ b/target/s390x/tcg/mem_helper.c
> @@ -25,6 +25,7 @@
> #include "tcg_s390x.h"
> #include "exec/helper-proto.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/cpu_ldst.h"
> #include "hw/core/tcg-cpu-ops.h"
> diff --git a/target/s390x/tcg/misc_helper.c b/target/s390x/tcg/misc_helper.c
> index 303f86d363..e3401f4efe 100644
> --- a/target/s390x/tcg/misc_helper.c
> +++ b/target/s390x/tcg/misc_helper.c
> @@ -27,6 +27,7 @@
> #include "exec/helper-proto.h"
> #include "qemu/timer.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/cpu_ldst.h"
> #include "qapi/error.h"
> #include "tcg_s390x.h"
> diff --git a/target/sh4/helper.c b/target/sh4/helper.c
> index 9659c69550..a45c38cc4d 100644
> --- a/target/sh4/helper.c
> +++ b/target/sh4/helper.c
> @@ -20,7 +20,7 @@
> #include "qemu/osdep.h"
>
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/log.h"
>
> diff --git a/target/sparc/ldst_helper.c b/target/sparc/ldst_helper.c
> index d92c9f1593..ae2a5fb4ab 100644
> --- a/target/sparc/ldst_helper.c
> +++ b/target/sparc/ldst_helper.c
> @@ -24,6 +24,7 @@
> #include "tcg/tcg.h"
> #include "exec/helper-proto.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "exec/cpu_ldst.h"
> #include "asi.h"
> diff --git a/target/tricore/helper.c b/target/tricore/helper.c
> index 7014255f77..d88dd20305 100644
> --- a/target/tricore/helper.c
> +++ b/target/tricore/helper.c
> @@ -19,7 +19,7 @@
> #include "qemu/log.h"
> #include "hw/registerfields.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
> #include "fpu/softfloat-helpers.h"
> #include "qemu/qemu-print.h"
> diff --git a/target/xtensa/helper.c b/target/xtensa/helper.c
> index ca214b948a..6327bf048f 100644
> --- a/target/xtensa/helper.c
> +++ b/target/xtensa/helper.c
> @@ -28,7 +28,7 @@
> #include "qemu/osdep.h"
> #include "qemu/log.h"
> #include "cpu.h"
> -#include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "gdbstub/helpers.h"
> #include "exec/helper-proto.h"
> #include "qemu/error-report.h"
> diff --git a/target/xtensa/mmu_helper.c b/target/xtensa/mmu_helper.c
> index 29b84d5dbf..91b869fb50 100644
> --- a/target/xtensa/mmu_helper.c
> +++ b/target/xtensa/mmu_helper.c
> @@ -33,6 +33,7 @@
> #include "exec/helper-proto.h"
> #include "qemu/host-utils.h"
> #include "exec/exec-all.h"
> +#include "exec/cputlb.h"
> #include "exec/page-protection.h"
>
> #define XTENSA_MPU_SEGMENT_MASK 0x0000001f
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
next prev parent reply other threads:[~2024-11-14 4:14 UTC|newest]
Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-14 1:12 [PATCH 00/24] exec: Build up 'cputlb.h' and 'ram_addr.h' headers Philippe Mathieu-Daudé
2024-11-14 1:12 ` [PATCH 01/24] exec/cpu-all: Include missing 'exec/cpu-defs.h' header Philippe Mathieu-Daudé
2024-11-14 4:09 ` Pierrick Bouvier
2024-11-14 8:29 ` Thomas Huth
2024-11-14 18:11 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 02/24] exec/cpu-defs: Remove unnecessary headers Philippe Mathieu-Daudé
2024-11-14 4:09 ` Pierrick Bouvier
2024-11-14 8:33 ` Thomas Huth
2024-11-14 18:15 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 03/24] exec/translation-block: Include missing 'exec/vaddr.h' header Philippe Mathieu-Daudé
2024-11-14 4:10 ` Pierrick Bouvier
2024-11-14 15:23 ` Philippe Mathieu-Daudé
2024-11-14 17:13 ` Pierrick Bouvier
2024-11-14 18:15 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 04/24] accel/tcg: Include missing 'exec/translation-block.h' header Philippe Mathieu-Daudé
2024-11-14 4:11 ` Pierrick Bouvier
2024-11-14 18:23 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 05/24] target/i386/helper: " Philippe Mathieu-Daudé
2024-11-14 4:11 ` Pierrick Bouvier
2024-11-14 18:42 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 06/24] target/rx/cpu: " Philippe Mathieu-Daudé
2024-11-14 4:11 ` Pierrick Bouvier
2024-11-14 18:43 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 07/24] system/watchpoint: Include missing 'exec/cpu-all.h' header Philippe Mathieu-Daudé
2024-11-14 4:11 ` Pierrick Bouvier
2024-11-14 18:53 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 08/24] linux-user/aarch64/mte: Include missing 'user/abitypes.h' header Philippe Mathieu-Daudé
2024-11-14 4:11 ` Pierrick Bouvier
2024-11-14 18:59 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 09/24] target/arm/mte: Restrict 'exec/ram_addr.h' to system emulation Philippe Mathieu-Daudé
2024-11-14 4:11 ` Pierrick Bouvier
2024-11-14 19:00 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 10/24] target/arm/cpu: Restrict cpu_untagged_addr() to user emulation Philippe Mathieu-Daudé
2024-11-14 4:12 ` Pierrick Bouvier
2024-11-14 19:03 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 11/24] exec: Introduce 'user/guest-host.h' header Philippe Mathieu-Daudé
2024-11-14 4:12 ` Pierrick Bouvier
2024-11-14 19:14 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 12/24] accel/tcg: Have tlb_vaddr_to_host() use vaddr type Philippe Mathieu-Daudé
2024-11-14 4:12 ` Pierrick Bouvier
2024-11-14 19:16 ` Richard Henderson
2024-11-14 1:12 ` [PATCH 13/24] exec: Declare tlb_reset_dirty*() in 'exec/cputlb.h' Philippe Mathieu-Daudé
2024-11-14 4:12 ` Pierrick Bouvier
2024-11-14 19:19 ` Richard Henderson
2024-11-14 21:05 ` Philippe Mathieu-Daudé
2024-11-14 1:12 ` [PATCH 14/24] exec: Declare tlb_init/destroy() " Philippe Mathieu-Daudé
2024-11-14 4:13 ` Pierrick Bouvier
2024-11-14 19:21 ` Richard Henderson
2024-11-14 21:13 ` Philippe Mathieu-Daudé
2024-11-14 1:13 ` [PATCH 15/24] exec: Declare tlb_set_page_full() " Philippe Mathieu-Daudé
2024-11-14 4:13 ` Pierrick Bouvier
2024-11-14 19:24 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 16/24] exec: Declare tlb_set_page_with_attrs() " Philippe Mathieu-Daudé
2024-11-14 4:13 ` Pierrick Bouvier
2024-11-14 1:13 ` [PATCH 17/24] exec: Declare tlb_set_page() " Philippe Mathieu-Daudé
2024-11-14 4:13 ` Pierrick Bouvier
2024-11-14 1:13 ` [PATCH 18/24] exec: Declare tlb_flush*() " Philippe Mathieu-Daudé
2024-11-14 4:14 ` Pierrick Bouvier [this message]
2024-11-14 19:30 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 19/24] exec: Declare tlb_hit*() " Philippe Mathieu-Daudé
2024-11-14 4:14 ` Pierrick Bouvier
2024-11-14 19:37 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 20/24] exec: Declare tlb_vaddr_to_host() " Philippe Mathieu-Daudé
2024-11-14 4:14 ` Pierrick Bouvier
2024-11-14 19:59 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 21/24] exec: Extract CPU physical memory API to 'sysemu/physmem-target.h' Philippe Mathieu-Daudé
2024-11-14 1:17 ` Philippe Mathieu-Daudé
2024-11-14 4:15 ` Pierrick Bouvier
2024-11-14 20:51 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 22/24] exec/cpu-common: Move ram_addr_t related methods to 'exec/ram_addr.h' Philippe Mathieu-Daudé
2024-11-14 4:15 ` Pierrick Bouvier
2024-11-14 20:47 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 23/24] exec/memory: Move qemu_map_ram_ptr() declaration " Philippe Mathieu-Daudé
2024-11-14 4:16 ` Pierrick Bouvier
2024-11-14 20:48 ` Richard Henderson
2024-11-14 1:13 ` [PATCH 24/24] exec: Move 'ram_addr.h' header under sysemu/ namespace Philippe Mathieu-Daudé
2024-11-14 4:16 ` Pierrick Bouvier
2024-11-14 20:49 ` Richard Henderson
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=d64523fc-03d3-451c-b646-4c31a25b473a@linaro.org \
--to=pierrick.bouvier@linaro.org \
--cc=alex.bennee@linaro.org \
--cc=anjo@rev.ng \
--cc=david@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-riscv@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=thuth@redhat.com \
/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).