Re: PCU panic on V240

"J. Hannken-Illjes" <[email protected]>
Newsgroups gmane.os.netbsd.ports.sparc64
Message-ID <[email protected]>
On Dec 6, 2013, at 12:56 PM, Takeshi Nakayama <[email protected]> wrote:

>>>> "J. Hannken-Illjes" <[email protected]> wrote
> 
>> Running -current on a Sparc V240 I get a diagnostic assertion running
>> the script attached:
>> 
>> panic: kernel diagnostic assertion "!cpu_intr_p()" failed: file "/work/build/src/sys/kern/subr_xcall.c", line 351 
> :
> :
>> This is the high priority xcall from subr_pcu.c and
>> curcpu()->ci_idepth is zero.
>> 
>> What is going wrong here?
> 
> There is some trick to handle ci_idepth in the case of softint.
> 
> In locore.s::softint_fastintr, decrease ci_idepth before calling
> softint handlers then increase ci_idepth.  But it seems that there is
> a chance to interrupt SOFTINT_SERIAL while handling other SOFTINT_*,
> and ci_idepth is increased in the meantime.

<snip>

> So, does the attached patch fix the panic?


Yes, it does.  Please commit :-)

--
J. Hannken-Illjes - [email protected] - TU Braunschweig (Germany)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.