diff options
| author | Andreas Färber <afaerber@suse.de> | 2013-08-12 18:09:47 +0200 |
|---|---|---|
| committer | Andreas Färber <afaerber@suse.de> | 2013-08-16 18:44:33 +0200 |
| commit | 35143f0164e6933a85c7c2b8a89a040d881a9151 (patch) | |
| tree | 2a6a071e8a716841844a89fba913c4e975e98053 /include | |
| parent | f202039811d8746b0586d2fd5f61de6c8cf68056 (diff) | |
| download | focaccia-qemu-35143f0164e6933a85c7c2b8a89a040d881a9151.tar.gz focaccia-qemu-35143f0164e6933a85c7c2b8a89a040d881a9151.zip | |
gdbstub: Fix gdb_register_coprocessor() register counting
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 <aneesh.kumar@linux.vnet.ibm.com> Cc: qemu-stable@nongnu.org (stable-1.6) Tested-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Tested-by: Max Filippov <jcmvbkbc@gmail.com> Tested-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'include')
| -rw-r--r-- | include/qom/cpu.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/qom/cpu.h b/include/qom/cpu.h index 0d6e95c0b6..3e4993661a 100644 --- a/include/qom/cpu.h +++ b/include/qom/cpu.h @@ -152,6 +152,7 @@ struct kvm_run; * @current_tb: Currently executing TB. * @gdb_regs: Additional GDB registers. * @gdb_num_regs: Number of total registers accessible to GDB. + * @gdb_num_g_regs: Number of registers in GDB 'g' packets. * @next_cpu: Next CPU sharing TB cache. * @kvm_fd: vCPU file descriptor for KVM. * @@ -188,6 +189,7 @@ struct CPUState { struct TranslationBlock *current_tb; struct GDBRegisterState *gdb_regs; int gdb_num_regs; + int gdb_num_g_regs; CPUState *next_cpu; int kvm_fd; |