From: Keith Owens <kaos@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: [Linux-ia64] get_scratch_regs in bk 2.4 unwind.c
Date: Sat, 08 Mar 2003 03:57:11 +0000 [thread overview]
Message-ID: <marc-linux-ia64-105590709806009@msgid-missing> (raw)
The bk version of unwind.c has some changes from my patch which do not
look right.
static inline struct pt_regs *
get_scratch_regs (struct unw_frame_info *info)
{
if (!info->pt) {
/* This should not happen with valid unwind info. */
UNW_DPRINT(0, "unwind.%s: bad unwind info: resetting info->pt\n", __FUNCTION__);
info->pt = info->sp - 16;
}
UNW_DPRINT(3, "unwind.%s: sp 0x%lx pt 0x%lx\n", __FUNCTION__, info->sp, info->pt);
return info->pt;
}
__FUNCTION__ will always print get_scratch_regs which is of no use, we
need the calling function. My patch passed in the calling function
name as a parameter. Please revert to passing in the function name or
make get_scratch_regs a #define so it gets the calling function name.
Also I printed the new value of info->pt, it is useful when debugging
bad unwind data.
unw_access_gr has
/* access a scratch register */
if (!info->pt) {
UNW_DPRINT(0, "unwind.%s: no pt-regs; cannot access r%d\n",
__FUNCTION__, regnum);
return -1;
}
pt = get_scratch_regs(info);
Why the test for !info->pt? No other use of get_scratch_regs has that
test, unw_access_[abf]r will continue with whatever data get_scratch_regs
returns, using pt_regs on top of stack if info->pt is undefined. The
code is inconsistent.
next reply other threads:[~2003-03-08 3:57 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-03-08 3:57 Keith Owens [this message]
2003-03-10 17:00 ` [Linux-ia64] get_scratch_regs in bk 2.4 unwind.c David Mosberger
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=marc-linux-ia64-105590709806009@msgid-missing \
--to=kaos@sgi.com \
--cc=linux-ia64@vger.kernel.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