From 35143f0164e6933a85c7c2b8a89a040d881a9151 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Mon, 12 Aug 2013 18:09:47 +0200 Subject: gdbstub: Fix gdb_register_coprocessor() register counting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit a0e372f0c49ac01faeaeb73a6e8f50e8ac615f34 reorganized the register counting for GDB. While it seems correct not to let the total number of registers skyrocket in an SMP scenario through a static variable, the distinction between total register count and 'g' packet register count (last_reg vs. num_g_regs) got lost among the way. Fix this by introducing CPUState::gdb_num_g_regs and using that in gdb_handle_packet(). Reported-by: Aneesh Kumar K.V Cc: qemu-stable@nongnu.org (stable-1.6) Tested-by: Aneesh Kumar K.V Tested-by: Max Filippov Tested-by: Peter Maydell Signed-off-by: Andreas Färber --- qom/cpu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'qom') diff --git a/qom/cpu.c b/qom/cpu.c index aa95108973..e71e57bd6b 100644 --- a/qom/cpu.c +++ b/qom/cpu.c @@ -240,7 +240,7 @@ static void cpu_common_initfn(Object *obj) CPUState *cpu = CPU(obj); CPUClass *cc = CPU_GET_CLASS(obj); - cpu->gdb_num_regs = cc->gdb_num_core_regs; + cpu->gdb_num_regs = cpu->gdb_num_g_regs = cc->gdb_num_core_regs; } static int64_t cpu_common_get_arch_id(CPUState *cpu) -- cgit v1.2.1