public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
From: David Mosberger <davidm@napali.hpl.hp.com>
To: linux-ia64@vger.kernel.org
Subject: Re: Problems using psr.dd
Date: Thu, 20 Nov 2003 18:47:50 +0000	[thread overview]
Message-ID: <marc-linux-ia64-106935412927575@msgid-missing> (raw)
In-Reply-To: <marc-linux-ia64-106879020623297@msgid-missing>

>>>>> On Thu, 20 Nov 2003 18:52:33 +1100, Keith Owens <kaos@sgi.com> said:

  Keith> If there is enough RSE activity during the hardware
  Keith> breakpoint handler to flush the registers at the time of the
  Keith> breakpoint then returning with psr.db = 1 and psr.dd = 1 to
  Keith> step over the hardware breakpoint will not work.  The RSE
  Keith> activity that occurs as the flushed registers are restored is
  Keith> counted as a valid instruction, psr.dd is cleared, the
  Keith> original instruction is reexecuted and it trips again.

  Keith> Beware of doing too much activity in the hardware breakpoint
  Keith> handler.  I will create a patch against traps.c to detect a
  Keith> return with psr.dd set and issue loadrs to ensure that the
  Keith> RSE problem does not bite us.

I'm still not sure what's triggering the spurious fault:

 (1) The RSE activity generated for restoring the current frame, or
 (2) The RSE activity generated by the alloc instruction that eventually
     follows the instruction to which "rfi" returns to.

Unfortunately, the description of Erratum 11 isn't terribly clear to
me.  It says:

	... The rfi instruction is followed by additional instructions
	that generate register stack (RSE) activity (alloc, flushrs,
	br.ret).

I assume "followed" is referring to execution order, not program order
(i.e., inserting nop's around the "rfi" isn't going to do us any
good).  In your (original) case, the "rfi" is followed by a store
instruction, br.call, then alloc.  From reading the description, I
wouldn't have expected this to trigger the Erratum, but perhaps it
does.  Can someone clarify?

	--david

  parent reply	other threads:[~2003-11-20 18:47 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-14  6:09 Problems using psr.dd Keith Owens
2003-11-20  2:39 ` David Mosberger
2003-11-20  4:32 ` Keith Owens
2003-11-20  7:18 ` Matt Chapman
2003-11-20  7:52 ` Keith Owens
2003-11-20 18:47 ` David Mosberger [this message]
2003-11-20 20:29 ` Seth, Rohit
2003-11-20 21:24 ` David Mosberger
2003-11-20 23:15 ` Keith Owens
2003-11-20 23:32 ` David Mosberger
2003-11-21  0:55 ` Seth, Rohit

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-106935412927575@msgid-missing \
    --to=davidm@napali.hpl.hp.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