Re: Repeatable crashes
"Valeriy E. Ushakov" <[email protected]> Thu, 31 Mar 2005 04:33:44 +0400
| Newsgroups | gmane.os.netbsd.ports.sh3,gmane.os.netbsd.ports.dreamcast |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Mar 08, 2005 at 23:16:59 +0900, Izumi Tsutsui wrote: > In article <[email protected]> > [email protected] wrote: > > > > Does your kernel have a recent MMU fix? > > > http://mail-index.netbsd.org/source-changes/2004/12/30/0019.html > > > > The problem seems to go away after I *reverted* those changes! We > > were taking an exception with exceptions blocked, which caused the > > reset. Any suggestions on debugging this further? > > Umm. > > It obviously shows that an exception (maybe TLB miss) happens > during _cpu_exception_suspend(), which causes reboot immediately. > > I don't know if such TLB miss allowed during updating TLB > in sh3_tlb_*() functions, but anyway it can not be blocked > and maybe the problem on dreamcast was caused by interrupt > during sh4_tlb_*() functions, which can be blocked. > > How about to use _cpu_intr_suspend()/_cpu_intr_resume(s) > instead of _cpu_exception_*()? > (or it's better to remove them from mmu_sh3.c?) So, what's the action plan? I'd like to remove the _cpu_exception_*() from mmu_sh3.c. I will test if keeping it in mmu.c doesn't cause problems for sh3, but can someone please also test if removing it from mmu.c doesn't cause problems for sh4? I wonder how _cpu_exception_*() helps a single _reg_write_4(SH_(PTEH), asid); I will request pullup for 3.x then. SY, Uwe -- [email protected] | Zu Grunde kommen http://www.ptc.spbu.ru/~uwe/ | Ist zu Grunde gehen