mirror of
https://github.com/qemu/qemu.git
synced 2026-02-04 02:24:51 +00:00
cpus: Trace cpu_exec_start() and cpu_exec_end() calls
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
committed by
Peter Maydell
parent
93ac765076
commit
65e438d9ea
@@ -249,6 +249,8 @@ void end_exclusive(void)
|
|||||||
/* Wait for exclusive ops to finish, and begin cpu execution. */
|
/* Wait for exclusive ops to finish, and begin cpu execution. */
|
||||||
void cpu_exec_start(CPUState *cpu)
|
void cpu_exec_start(CPUState *cpu)
|
||||||
{
|
{
|
||||||
|
trace_cpu_exec_start(cpu->cpu_index);
|
||||||
|
|
||||||
qatomic_set(&cpu->running, true);
|
qatomic_set(&cpu->running, true);
|
||||||
|
|
||||||
/* Write cpu->running before reading pending_cpus. */
|
/* Write cpu->running before reading pending_cpus. */
|
||||||
@@ -319,6 +321,7 @@ void cpu_exec_end(CPUState *cpu)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
trace_cpu_exec_end(cpu->cpu_index);
|
||||||
}
|
}
|
||||||
|
|
||||||
void async_safe_run_on_cpu(CPUState *cpu, run_on_cpu_func func,
|
void async_safe_run_on_cpu(CPUState *cpu, run_on_cpu_func func,
|
||||||
|
|||||||
@@ -29,6 +29,8 @@
|
|||||||
breakpoint_insert(int cpu_index, uint64_t pc, int flags) "cpu=%d pc=0x%" PRIx64 " flags=0x%x"
|
breakpoint_insert(int cpu_index, uint64_t pc, int flags) "cpu=%d pc=0x%" PRIx64 " flags=0x%x"
|
||||||
breakpoint_remove(int cpu_index, uint64_t pc, int flags) "cpu=%d pc=0x%" PRIx64 " flags=0x%x"
|
breakpoint_remove(int cpu_index, uint64_t pc, int flags) "cpu=%d pc=0x%" PRIx64 " flags=0x%x"
|
||||||
breakpoint_singlestep(int cpu_index, int enabled) "cpu=%d enable=%d"
|
breakpoint_singlestep(int cpu_index, int enabled) "cpu=%d enable=%d"
|
||||||
|
cpu_exec_start(int cpu_index) "cpu=%d"
|
||||||
|
cpu_exec_end(int cpu_index) "cpu=%d"
|
||||||
|
|
||||||
# job.c
|
# job.c
|
||||||
job_state_transition(void *job, int ret, const char *legal, const char *s0, const char *s1) "job %p (ret: %d) attempting %s transition (%s-->%s)"
|
job_state_transition(void *job, int ret, const char *legal, const char *s0, const char *s1) "job %p (ret: %d) attempting %s transition (%s-->%s)"
|
||||||
|
|||||||
Reference in New Issue
Block a user