[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NetBSD/cobalt kernel



Jun Ebihara <jun@soum.co.jp> writes:
> 1.5でcobalt上でpkgsrcをbulk buildすると、
> Feb  2 04:12:14 qube /netbsd: pmap_unwire: wiring for pmap 0xc00b8f40 va 0x7fff6000 didn't change!
> 
> とかいってshがよく落ちたりするんですが、同様の問題が観測されている
> かたはいらっしゃいますか?

このメッセージ(pmap_unwire...)や、/bin/shがランダムにcore dumpするなどの
現象ですが、virtual aliasの問題だったようです。

pmap_unwire...は確実な再現方法がないので十分な検証はしていませんが、
/bin/shのcore dumpは直しました。

1.5のブランチにはpull up requestを出したのでそのうちに反映されると思います。
currentはsyssrc/sys/arch/mips/mips/pmap.c(rev. 1.135)で直っています。

pull upが実行されるまで待てない方は添付のpatchを適用してください。

篠原

Index: pmap.c
===================================================================
RCS file: /cvsroot/syssrc/sys/arch/mips/mips/pmap.c,v
retrieving revision 1.99.2.1
diff -u -r1.99.2.1 pmap.c
--- pmap.c	2000/06/22 05:11:21	1.99.2.1
+++ pmap.c	2001/10/27 06:07:20
@@ -1743,9 +1743,8 @@
 	 *      the destination as well?
 	 */
 	if (CPUISMIPS3) {
-		/*XXX FIXME Not very sophisticated */
-		/*	MachFlushCache();*/
-		MachFlushDCache(dst, NBPG);
+		MachHitFlushDCache(MIPS_PHYS_TO_KSEG0(src), NBPG);
+		MachHitFlushDCache(MIPS_PHYS_TO_KSEG0(dst), NBPG);
 	}
 #endif
 }