[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 8/8] disas: Remove monitor_disas_is_physical
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH v2 8/8] disas: Remove monitor_disas_is_physical |
Date: |
Tue, 26 Sep 2017 14:45:16 +0100 |
User-agent: |
mu4e 0.9.19; emacs 26.0.60 |
Richard Henderson <address@hidden> writes:
> Even though there is only one monitor, and thus no race on this
> global data object, there is also no point in having it. We can
> just as well record the decision in the read_memory_function that
> we select.
>
> Signed-off-by: Richard Henderson <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
> ---
> disas.c | 18 +++++-------------
> 1 file changed, 5 insertions(+), 13 deletions(-)
>
> diff --git a/disas.c b/disas.c
> index b4e4fc409e..c3606b3986 100644
> --- a/disas.c
> +++ b/disas.c
> @@ -513,19 +513,11 @@ const char *lookup_symbol(target_ulong orig_addr)
>
> #include "monitor/monitor.h"
>
> -static int monitor_disas_is_physical;
> -
> static int
> -monitor_read_memory (bfd_vma memaddr, bfd_byte *myaddr, int length,
> - struct disassemble_info *info)
> +physical_read_memory (bfd_vma memaddr, bfd_byte *myaddr, int length,
> + struct disassemble_info *info)
> {
> - CPUDebug *s = container_of(info, CPUDebug, info);
> -
> - if (monitor_disas_is_physical) {
> - cpu_physical_memory_read(memaddr, myaddr, length);
> - } else {
> - cpu_memory_rw_debug(s->cpu, memaddr, myaddr, length, 0);
> - }
> + cpu_physical_memory_read(memaddr, myaddr, length);
> return 0;
> }
>
> @@ -540,8 +532,8 @@ void monitor_disas(Monitor *mon, CPUState *cpu,
> INIT_DISASSEMBLE_INFO(s.info, (FILE *)mon, monitor_fprintf);
>
> s.cpu = cpu;
> - monitor_disas_is_physical = is_physical;
> - s.info.read_memory_func = monitor_read_memory;
> + s.info.read_memory_func
> + = (is_physical ? physical_read_memory : target_read_memory);
> s.info.print_address_func = generic_print_address;
> s.info.buffer_vma = pc;
> s.info.cap_arch = -1;
--
Alex Bennée
- [Qemu-devel] [PATCH v2 0/8] Support the Capstone disassembler, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 2/8] target/ppc: Convert to disas_set_info hook, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 5/8] i386: Support Capstone in disas_set_info, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 1/8] target/i386: Convert to disas_set_info hook, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 7/8] ppc: Support Capstone in disas_set_info, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 6/8] arm: Support Capstone in disas_set_info, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 3/8] disas: Remove unused flags arguments, Richard Henderson, 2017/09/19
- [Qemu-devel] [PATCH v2 8/8] disas: Remove monitor_disas_is_physical, Richard Henderson, 2017/09/19
- Re: [Qemu-devel] [PATCH v2 8/8] disas: Remove monitor_disas_is_physical,
Alex Bennée <=
- [Qemu-devel] [PATCH v2 4/8] disas: Support the Capstone disassembler library, Richard Henderson, 2017/09/19
- Re: [Qemu-devel] [PATCH v2 0/8] Support the Capstone disassembler, no-reply, 2017/09/19