From: Niklas Quarfot Nielsen <nik@qni.dk>
To: gdb@sourceware.org
Subject: GDB remote debugging stub: Question about memory read
Date: Mon, 27 Sep 2010 08:54:00 -0000 [thread overview]
Message-ID: <1257E26A-12FB-432E-A18C-137440C02080@qni.dk> (raw)
[-- Attachment #1: Type: text/plain, Size: 1750 bytes --]
Hi everyone,
I just subscribed to this list, so if I do not follow your mailing list conventions - please let me know.
I am implementing a remote debugging stub for a research operating system at the technical university of Denmark.
GDB can connect and if I disable memory reads, single stepping and hardware breakpointing works fine. So serial communication and initialization should be in order.
The problem arises when GDB requests memory read of the stack (right after the g-packet as been received).
The registers contains the following:
rax 0x0
rbx 0xb816a
rcx 0x6e
rdx 0x8
rsi 0xffff8000000b8000
rdi 0xb8000
rbp 0xffffffff6efffff0
rsp 0xffffffff6effffd0
r8 0x5
r9 0x78bfbff
r10 0x0
r11 0x0
r12 0x0
r13 0x0
r14 0x0
r15 0x0
rip 0xffffffff80200293 <system_start+223>
eflags 0x46 [ PF ZF ]
cs 0x18
ss 0x0
ds 0x0
es 0x0
fs 0x0
GDB tries to read 0x40 bytes starting at address 0xffffffff6effffc0, which (I guess) is from the RSP.
Packet: mffffffff6effffc0,40
My question is:
Why does GDB try to read 0x40 bytes, when there is only 0x20 bytes on the stack (RBP-RSP)?
The architecture is an AMD64 and the version of GDB is 7.1(x86_64-gnu-linux).
I appreciate any answer and/or clue to why GDB behaves like this.
I have tried to look through the remote debugging source code of GDB, but this has not given me any answers.
If needed, I can post debugging information from the target code in GDB.
Best regards
Niklas Quarfot Nielsen
[-- Attachment #2: smime.p7s --]
[-- Type: application/pkcs7-signature, Size: 1925 bytes --]
next reply other threads:[~2010-09-27 8:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-27 8:54 Niklas Quarfot Nielsen [this message]
2010-09-27 9:16 ` Pedro Alves
2010-09-27 9:20 ` Niklas Quarfot Nielsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1257E26A-12FB-432E-A18C-137440C02080@qni.dk \
--to=nik@qni.dk \
--cc=gdb@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox