]> git.ipfire.org Git - thirdparty/qemu.git/commit
gdbstub: i386: Fix gdb_get_reg16() parameter to unbreak gdb
authorPeter Xu <peterx@redhat.com>
Tue, 14 Apr 2020 20:06:25 +0000 (21:06 +0100)
committerAlex Bennée <alex.bennee@linaro.org>
Wed, 15 Apr 2020 10:38:23 +0000 (11:38 +0100)
commitbbc40fefcee0d69d61ceaf8c0695d2ce43cdc87b
tree7e30fff9c79eccf1f0fe4c2e6fcd359e5822f93c
parent4b27f9b08352c502ff982df30866063f3025d0ac
gdbstub: i386: Fix gdb_get_reg16() parameter to unbreak gdb

We should only pass in gdb_get_reg16() with the GByteArray* object
itself, no need to shift.  Without this patch, gdb remote attach will
crash QEMU:

  (gdb) target remote :1234
  Remote debugging using :1234
  Remote communication error.  Target disconnected.: Connection reset by peer.
  $ qemu-system-x86_64 -m 1G -smp 4 ... -s
  ERROR:qemu/gdbstub.c:1843:handle_read_all_regs: assertion failed: (len == gdbserver_state.mem_buf->len)
  Bail out! ERROR:qemu/gdbstub.c:1843:handle_read_all_regs: assertion failed: (len == gdbserver_state.mem_buf->len)

Fixes: a010bdbe719 ("extend GByteArray to read register helpers")
Signed-off-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Tested-by: Stefano Garzarella <sgarzare@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20200409164954.36902-3-peterx@redhat.com>
Message-Id: <20200414200631.12799-12-alex.bennee@linaro.org>
target/i386/gdbstub.c