From: Tom Tromey <tom@tromey.com>
To: Walt Drummond via Gdb <gdb@sourceware.org>
Subject: Re: AMD64_LINUX_frame_size
Date: Thu, 07 Jan 2021 14:19:03 -0700 [thread overview]
Message-ID: <87eeiwv41k.fsf@tromey.com> (raw)
In-Reply-To: <CADCN6nxVYmjS+D0VX5-DqRTvf-Xc-EjN7cJ1vRyehg+vV6tVig@mail.gmail.com> (Walt Drummond via Gdb's message of "Wed, 6 Jan 2021 08:38:59 -0800")
>>>>> "Walt" == Walt Drummond via Gdb <gdb@sourceware.org> writes:
Walt> After looking at this further, I think I understand AMD64_LINUX_frame_size
Walt> and why it differs from the size of the kernel's rt_sigframe (differences
Walt> between glibc's and the kernels' definition of sigset_t), but I don't
Walt> understand how GDB arrived at 512 for AMD_LINUX_xstate. The kernel's math
Walt> frame, which also contains the extended state information, is 840 bytes. I
Walt> feel I must be missing something. Any pointers?
I don't really know, but from a quick look at this code, it seems like
this is only used by the process record code, and furthermore only like:
if (record_full_arch_list_add_mem (rsp, AMD64_LINUX_redzone
+ AMD64_LINUX_xstate
+ AMD64_LINUX_frame_size))
return -1;
These are defined as:
#define AMD64_LINUX_redzone 128
#define AMD64_LINUX_xstate 512
#define AMD64_LINUX_frame_size 560
which adds up to 1200, which maybe is also wrong (dunno), but at least
is larger and maybe (also dunno) harmless in this context.
Tom
next prev parent reply other threads:[~2021-01-07 21:19 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-04 18:30 AMD64_LINUX_frame_size Walt Drummond
2021-01-06 16:38 ` AMD64_LINUX_frame_size Walt Drummond
2021-01-07 21:19 ` Tom Tromey [this message]
2021-01-07 21:49 ` AMD64_LINUX_frame_size Walt Drummond
2021-01-09 20:14 ` AMD64_LINUX_frame_size Tom Tromey
2021-01-11 10:43 ` AMD64_LINUX_frame_size Florian Weimer
2021-01-12 16:10 ` AMD64_LINUX_frame_size Walt Drummond
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=87eeiwv41k.fsf@tromey.com \
--to=tom@tromey.com \
--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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).