public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
From: Keith Owens <kaos@sgi.com>
To: linux-ia64@vger.kernel.org
Subject: Re: [Linux-ia64] [patch] 2.4.20-ia64-021210 new spinlock code
Date: Sat, 15 Mar 2003 10:31:53 +0000	[thread overview]
Message-ID: <marc-linux-ia64-105590709806132@msgid-missing> (raw)
In-Reply-To: <marc-linux-ia64-105590709805543@msgid-missing>

On Fri, 14 Mar 2003 22:46:28 -0800, 
David Mosberger <davidm@napali.hpl.hp.com> wrote:
>I thought about it some more and recalled why I was so uneasy about
>claiming ar.pfs is 0: the problem is that this informs that the
>_previous_ register frame was empty, not the current one.  So the
>unwind info technically is still wrong.  I think you realize that, and
>the kernel unwinder won't complain, since it's not paranoid about
>validating accesses to stacked registers.  But still, the unwind info
>is wrong and I'm not terribly comfortable with that.

I agree, but the end result is benign.  Unwind will attribute the
previous frame's registers to the out of line contention code and will
attribute zero registers to the code that invoked spin_lock(), IOW the
argument lists are swapped on the top two unwind entries.  After that
the unwind is in sync and all other registers are right.

Unwind needs a way of saying "this is out of line code, not a function,
and its state is the same as this ip".  But without that feature in the
unwind spec, this is probably the best that we can do.  It is a pity
that unwind thinks that everything is a function and did not consider
out of line code.

How about putting the new spinlock code in now so I can continue with
adding kdb support for debugging hung spinlocks?  Even with the swapped
arg list, any debug data on hung spinlocks is better than none at all.
I will think some more about the unwind descriptors to see if there is
any way of avoiding the misattribution of the register usage, but the
worst case is that we live with the swapped argument list.



  parent reply	other threads:[~2003-03-15 10:31 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-11 12:48 [Linux-ia64] [patch] 2.4.20-ia64-021210 prevent loop on zero instruction Keith Owens
2003-03-14  4:39 ` [Linux-ia64] [patch] 2.4.20-ia64-021210 unwind.c - allow unw_access_gr(r0) Keith Owens
2003-03-15  0:01 ` Bjorn Helgaas
2003-03-15  1:10 ` [Linux-ia64] [patch] 2.4.20-ia64-021210 new spinlock code Keith Owens
2003-03-15  1:30 ` David Mosberger
2003-03-15  2:36 ` Keith Owens
2003-03-15  2:40 ` Keith Owens
2003-03-15  6:46 ` David Mosberger
2003-03-15 10:31 ` Keith Owens [this message]
2003-03-27 20:29 ` David Mosberger
2003-03-27 23:15 ` Keith Owens
2003-03-27 23:32 ` David Mosberger
2003-03-28  1:39 ` Keith Owens
2003-03-28  1:45 ` David Mosberger
2003-03-28  1:49 ` Keith Owens
2003-03-28  1:53 ` David Mosberger
2003-03-28  2:10 ` Keith Owens
2003-03-28  2:14 ` 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-105590709806132@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