This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PR13984 - gdb stops controlling a thread after "Remote 'g' packet reply is too long: ..." error message


On Wed, Apr 13, 2016 at 11:27 PM, Pedro Alves <palves@redhat.com> wrote:
> On 04/13/2016 09:07 PM, Orgad Shaneh wrote:
>> On Wed, Apr 13, 2016 at 10:11 PM, Luis Machado
>> <lgustavo@codesourcery.com> wrote:
>>>
>>> On 04/13/2016 12:43 AM, Orgad Shaneh wrote:
>>>>>>
>>>>>> I got this message when I tried to remotely debug a
>>>>>> mips64-octeon-linux gdbserver 6.8 with GDB >= 7.5.
>>>>>>
>>>>>> GDB <= 7.4.1 works well, but with 7.5 and up I receive this message
>>>>>> and the debugger stops functioning.
>>>>>>
>>>>>
>>>>> I suppose GDB 7.5 is slightly incompatible with older gdbserver versions.
>>>>>
>>>>> What kind of target description does gdbserver return in this case (set
>>>>> debug remote 1)?
>>>>
>>>>
>>>> Full log attached. Thanks for your help.
>>>>
>>>> - Orgad
>>>>
>>>
>>> Strange. If this is gdbserver 6.8, it should've replied to the qSupported packet? That one was added in 6.6.
>>
>>
>> Hi,
>>
>> Sorry, my fault. The gdbserver is GNU gdb 6.5 Cavium Networks Version:
>> 1_7_0, build 45
>>
>> gdbserver 6.8 is in Cavium SDK2. I don't know if it works with recent GDB.
>>
>
> So there's no xml target description involved?  It sounds like
> either the default layout or some of the mips_register_g_packet_guesses
> guesses is taking effect then.
>
> If the size of the register file gdbserver is sending is larger than
> what gdb is expecting, then it's possible to register offsets
> are mismatched as well.
>
> Figure out what set of registers gdbserver is sending, and compare to
> "maint print remote-registers", after connecting.  What's the mismatch?

See the attached files.

gdb-local-6.5 is a local execution of gdb on the target machine.
gdb-remote-7.4 is the output of 7.4 official version (without Cavium
patches), which works.
gdb-remote-7.6 is the output of 7.6 Cavium version, which doesn't.

Attachment: gdb-local-6.5.txt
Description: Text document

Attachment: gdb-remote-7.4.txt
Description: Text document

Attachment: gdb-remote-7.6.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]