qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] qemu-system-tricore: segfault when entering "x


From: Thomas Huth
Subject: Re: [Qemu-devel] [PATCH] qemu-system-tricore: segfault when entering "x 0" on the monitor
Date: Fri, 28 Jul 2017 08:11:36 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0

On 27.07.2017 16:30, Eduardo Otubo wrote:
> Starting Qemu with "qemu-system-tricore -nographic -M tricore_testboard -S"
> and entering "x 0" at the monitor prompt leads to Segmentation fault. This 
> happens
> because tricore_cpu_get_phys_page_debug() is not implemented yet, this
> is a temporary workaround to avoid the crash.
> 
> Signed-off-by: Eduardo Otubo <address@hidden>
> ---
>  target/tricore/cpu.c | 10 ++++++++++
>  target/tricore/cpu.h |  1 +
>  2 files changed, 11 insertions(+)
> 
> diff --git a/target/tricore/cpu.c b/target/tricore/cpu.c
> index 08f50e2ba7..5ab5b56454 100644
> --- a/target/tricore/cpu.c
> +++ b/target/tricore/cpu.c
> @@ -22,6 +22,15 @@
>  #include "cpu.h"
>  #include "qemu-common.h"
>  #include "exec/exec-all.h"
> +#include "qemu/error-report.h"
> +
> +static hwaddr tricore_cpu_get_phys_page_attrs_debug(CPUState *cpu, vaddr 
> addr,
> +                                         MemTxAttrs *attrs)
> +{
> +    error_report("function cpu_get_phys_page_attrs_debug not "
> +                    "implemented, aborting");
> +    return -1;
> +}
>  
>  static inline void set_feature(CPUTriCoreState *env, int feature)
>  {
> @@ -176,6 +185,7 @@ static void tricore_cpu_class_init(ObjectClass *c, void 
> *data)
>      cc->dump_state = tricore_cpu_dump_state;
>      cc->set_pc = tricore_cpu_set_pc;
>      cc->synchronize_from_tb = tricore_cpu_synchronize_from_tb;
> +    cc->get_phys_page_attrs_debug = tricore_cpu_get_phys_page_attrs_debug;
>  }
>  
>  static void cpu_register(const TriCoreCPUInfo *info)
> diff --git a/target/tricore/cpu.h b/target/tricore/cpu.h
> index a3493a123c..2663723955 100644
> --- a/target/tricore/cpu.h
> +++ b/target/tricore/cpu.h
> @@ -224,6 +224,7 @@ static inline TriCoreCPU 
> *tricore_env_get_cpu(CPUTriCoreState *env)
>  #define ENV_OFFSET offsetof(TriCoreCPU, env)
>  
>  hwaddr tricore_cpu_get_phys_page_debug(CPUState *cpu, vaddr addr);
> +

Unnecessary white-space change ... rather remove the
tricore_cpu_get_phys_page_debug() line instead?

>  void tricore_cpu_dump_state(CPUState *cpu, FILE *f,
>                              fprintf_function cpu_fprintf, int flags);

Apart from the nit above, looks like this fixes the crash indeed:

Tested-by: Thomas Huth <address@hidden>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]