All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Lijun Chen" <chenli@nortelnetworks.com>
To: Jun Sun <jsun@mvista.com>
Cc: linux-mips@linux-mips.org, Dominic Sweetman <dom@mips.com>,
	ralf@linux-mips.org
Subject: Re: exception priority for BCM1250
Date: Wed, 31 Mar 2004 15:26:15 -0500	[thread overview]
Message-ID: <406B2967.5090607@americasm01.nt.com> (raw)
In-Reply-To: 20040331101905.D6712@mvista.com

Jun, Thanks a lot for your reply. Your jtrace is interesting, i am going 
to give a try.
Lijun

Jun Sun wrote:

>On Wed, Mar 31, 2004 at 10:39:19AM -0500, Lijun Chen wrote:
>  
>
>>Thanks a lot, Dominic and Ralf.
>>So interrupts and a few exception conditions are maskable and preemptable.
>>The machine-level exceptions are non-maskable.If ever multiple 
>>exceptions occur
>>at the same time, cpu picks the highest priority one.
>>
>>But in the MIPS64 spec, it says the EXL bit is set when any exception 
>>other than Reset,
>>Soft reset, NMI or Cache Error exception are taken. Does this mean Cache 
>>error can
>>preempt whatever else is going on except for Reset and NMI?
>>
>>    
>>
>
>I think so.  Usually when cache error happens you are dead.  
>For bcm1250 there is a cache error handler which works around a hw bug.
>I believe the workaround code is in the linux-mips.org tree.
> 
>  
>
>>My intention is to write some information to a kernel buffer when cache 
>>and bus
>>error exceptions occur. If they use the common buffer and a spin_lock() 
>>is used before
>>writing, will this cause dead lock if kernel is handling bus error while 
>>a cache error
>>occurs?
>>
>>    
>>
>
>It will be a deadlock only if another exception happens and you try
>to acquire the lock while you are already in the middle of spin_lock()/spin_unlock(). 
>You should use spin_lock() in a scope as small as possible.
>
>BTW, you may my tiby tracing patch handy for something like this.
>
>http://linux.junsun.net/patches/generic/experimental/040316.a-jstrace.patch
>
>Jun
>
>  
>

      reply	other threads:[~2004-03-31 20:32 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-30 22:47 exception priority for BCM1250 Lijun Chen
2004-03-30 23:38 ` Lijun Chen
2004-03-30 23:41   ` Ralf Baechle
2004-03-30 23:43 ` Ralf Baechle
2004-03-31  8:35 ` Dominic Sweetman
2004-03-31 15:39   ` Lijun Chen
2004-03-31 18:19     ` Jun Sun
2004-03-31 20:26       ` Lijun Chen [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=406B2967.5090607@americasm01.nt.com \
    --to=chenli@nortelnetworks.com \
    --cc=dom@mips.com \
    --cc=jsun@mvista.com \
    --cc=linux-mips@linux-mips.org \
    --cc=ralf@linux-mips.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 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.