Subject: 1.2D -current panic in arch/sparc/sparc/pmap.c:667
To: None <port-sparc@NetBSD.ORG>
From: Harald Barth <haba@pdc.kth.se>
List: port-sparc
Date: 04/10/1997 19:50:36
datafault: pc=f8129b38 addr=20 sfsr=326<FAV>
panic: kernel fault

(gdb) list *0xf8129b38
0xf8129b38 is in kvm_uncache (../../../../arch/sparc/sparc/pmap.c:667).
662             c = &cpuinfo.ctxinfo[getcontext4m()];
663             pm = c->c_pmap;
664     
665             /* Note: inline version of setptesw4m() */
666     #ifdef DEBUG
667             if (pm->pm_regmap == NULL)
668                     panic("setpte4m: no regmap entry");
669     #endif
670             rm = &pm->pm_regmap[VA_VREG(va)];
671             sm = &rm->rg_segmap[VA_VSEG(va)];

Without DEBUG, it dies at line 670 instead.

System is currently running 1.2B:

molle# dmesg
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 1.2B (GENERIC) #11: Tue Dec 10 00:24:14 MET 1996
    pk@flambard:/usr/src/sys/arch/sparc/compile/GENERIC
real mem = 66617344
avail mem = 60321792
using 813 buffers containing 3330048 bytes of memory
bootpath: /iommu@f,e0000000/sbus@f,e0001000/dma@f,81000/esp@f,80000/sd@3,0
mainbus0 (root): SUNW,SPARCsystem-600
cpu0 at mainbus0: Cypress,CY605 @ 40 MHz, RT602 or WTL3171 FPU
cpu0: physical 64K combined cache (32 bytes/line) cache enabled

To get the -current recognize the CPU type I had to add 
one line to cpu.c. Something more to add?

molle# diff -c cpu.c.orig cpu.c 
*** cpu.c.orig  Sun Mar 23 21:08:09 1997
--- cpu.c       Thu Apr 10 11:01:10 1997
***************
*** 963,968 ****
--- 963,969 ----
        { CPU_SUN4M, 0, 4, 0, 4, "MB86904", &module_swift },
        { CPU_SUN4M, 0, 5, 0, 5, "MB86907", &module_turbosparc },
        { CPU_SUN4M, 1, 1, 1, 0, "CY7C601/604", &module_cypress },
+       { CPU_SUN4M, 1, 1, 1, 0xb, "CY7C601/605 I guess", &module_cypress },
        { CPU_SUN4M, 1, 1, 1, 0xc, "CY7C601/605 (v1?)", &module_cypress },
        { CPU_SUN4M, 1, 1, 1, 0xf, "CY7C601/605 (v2?)", &module_cypress },
        { CPU_SUN4M, 1, 3, 1, ANY, "CY7C611", &module_cypress },


Is there someone else out there who is testing -current on the
CY7C601/605 CPU?

More information from a similar system runnig SunOS414:

        Node 0xffd700d8
                sparc-version:  00000007
                page-size:  00001000
                mmu-nctx:  00001000
                cache-associativity:  00000001
                cache-nlines:  00000800
                cache-line-size:  00000020
                ncaches:  00000001
                nmmus:  00000001
                device_type:  'cpu'
                implementation:  00000001
                version:  0000000b
                reg:  0000000f.f8fffffc.00000004
                cache-coherence?:  
                mid:  00000008
                name:  'Cypress,CY605'
                mailbox:  0000000f.00001000.00000001

If there is anything I can test, let me know.
Harald.