From: Ralf Baechle <ralf@linux-mips.org>
To: peter fuerst <pf@net.alphadv.de>
Cc: linux-mips@linux-mips.org
Subject: Re: Bus error question...
Date: Tue, 3 May 2005 12:18:57 +0100 [thread overview]
Message-ID: <20050503111857.GR24693@linux-mips.org> (raw)
In-Reply-To: <Pine.LNX.4.21.0505020149150.3024-100000@Opal.Peter>
On Mon, May 02, 2005 at 01:55:08AM +0200, peter fuerst wrote:
> this question is posted here in the hope, it will be picked up and answered
> by some of the <*@*engr.sgi.com> gurus, i apologize to the other members of
> this mailing-list for annoying them with it as well ;-)
They've sold their souls to the evil empire.
> Is it save to assume, that memory bus errors (mc cpu_error_stat & 0x400) on
> IP28 - due to R10k's precise exception model - can be asynchronous only when
> caused by an aborted (misspeculated) instruction ?
> The R10k manual, experiences with spurious bus errors and experiments with
> "real" and speculated loads/stores seem to suggest this.
> Moreover, could it be enough to recognize the bus error as asynchrounous,
> when the exception code in cp0_cause doesn't say "Instruction bus error
> exception" (6) or "Data bus..." (7), but "Interrupt" (0) ? (i.e. without
> analyzing the instruction at epc and register contents)
>
> Rationale for this question: if a memory bus error can reliably be identified
> as originating from a misspeculated memory access, it would be possible to get
> rid of the myriads of cache barriers before *loads* (stores will remain
> protected by cache barriers anyway) again, and spending some thousand machine
> cycles on analyzing a bus error every three days of uptime is clearly more
> efficient than having a cache barrier in kernel code every seventeen
> instructions...
Supposedly cache barrier instructions on the R10000 are relativly cheap
but so far due to the lack of a need we haven't actually benchmarked that.
As I recall the issue loads would still fetch the line from memory
which in case of DMA buffers could result in stale data unless a cache
flush is being performed after the DMA as well.
Ralf
prev parent reply other threads:[~2005-05-03 11:19 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-05-01 23:55 Bus error question peter fuerst
2005-05-03 11:18 ` Ralf Baechle [this message]
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=20050503111857.GR24693@linux-mips.org \
--to=ralf@linux-mips.org \
--cc=linux-mips@linux-mips.org \
--cc=pf@net.alphadv.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.