gdb-xml: Fix size of EFER register on i386 architecture when debugged by GDB
commit75ac231c67cdb13f0609943fab5499963858b587
authorTaiseiIto <taisei1212@outlook.jp>
Tue, 13 Sep 2022 12:06:00 +0000 (13 12:06 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Sun, 6 Nov 2022 08:48:26 +0000 (6 09:48 +0100)
tree60c004daf69799114e9b1f90920e9188efcc8c8b
parente0d034bb243cf0bac2416e00af810c4ca7821762
gdb-xml: Fix size of EFER register on i386 architecture when debugged by GDB

Before this commit, there were contradictory descriptions about size of EFER
register.
Line 113 says the size is 8 bytes.
Line 129 says the size is 4 bytes.

As a result, when GDB is debugging an OS running on QEMU, the GDB cannot
read 'g' packets correctly. This 'g' packet transmits values of each
registers of machine emulated by QEMU to GDB. QEMU, the packet sender,
assign 4 bytes for EFER in 'g' packet based on the line 113.
GDB, the packet receiver, extract 8 bytes for EFER in 'g' packet based on
the line 129. Therefore, all registers located behind EFER in 'g' packet
has been shifted 4 bytes in GDB.

After this commit, GDB can read 'g' packets correctly.

Signed-off-by: TaiseiIto <taisei1212@outlook.jp>
Message-Id: <TY0PR0101MB4285F637209075C9F65FCDA6A4479@TY0PR0101MB4285.apcprd01.prod.exchangelabs.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
gdb-xml/i386-32bit.xml