|
Namazu for hns による簡易全文検索 詳しくは 詳細指定/ヘルプを参照して下さい |
||||||||||||||||||||||||||||||||||||||||||||||||||
2002年06月17日(月) 旧暦 [n年日記]#1 [NetBSD] start=0x100000 で止る問題@ 20020314+(libkern)0313 動く:@ 20020407 kbd/screen では動かない:@ 20020407 に逆 patch を当てる(R)と動く:
ただし
@ 20020407 に syncicache.c だけを古くして見る(R-2)と、:
serial (ttya) でも動かなくなってしまう。
0 > boot netbsd.1 OF_open bootpath=ata/ata-disk@0 read stage 2 blocks: 01234567. done! starting stage 2... >> NetBSD/macppc OpenFirmware Boot, Revision 1.6 >> (makoto@ibook, Mon May 27 12:55:46 JST 2002) no active package3753564+218516 [188096+156874]=0x41e1e0 start=0x100000しかし、良く考えて見ると、__syncicache を呼んでいるのは ofwboot (/boot) であって、上の作業ではその内容は更新されていない ? (以上で使っている ofwboot は 1.6_BETA1 のもの) というのは、あさはかであって @ __syncicache は:
kernel が読まれた後、起動する時の一番最初の、
syssrc/sys/arch/macppc/macppc/locore.S の中の
212 mr 5,6 /* args string */ 213 bl _C_LABEL(initppc) 214 bl _C_LABEL(main) 215 b _C_LABEL(OF_exit)(これはどの版でも変更無) で呼ばれる initppc で、それは syssrc/sys/arch/macppc/macppc/machdep.c の中にあって、 で 141 initppc(startkernel, endkernel, args) 313 __syncicache((void *)EXC_RST, EXC_LAST - EXC_RST + 0x100); 419 restore_ofmap(ofmap, len) 472 __syncicache((void *)&extint_call, sizeof extint_call); 473 __syncicache((void *)EXC_EXI, (int)&extsize); 684 cpu_reboot(howto, what) 724 __syncicache((void *)msgbuf_paddr, round_page(MSGBUFSIZE)); 748 /* flush cache for msgbuf */ 749 __syncicache((void *)msgbuf_paddr, round_page(MSGBUFSIZE));のように呼ばれている。 (これもどの版でも変更無) @ libkern の関係だけを戻して見ようか。:
serial でも動かなくなってしまった。
@ sys/lib/libkern/arch/powerpc/ だけの問題だ、:
しかも 20020314 の変更だけが問題だということで、確かに
rest libkern/arch/powerpc 20020314 + 20020313 boots fine even with kbd/screen 20020314 stops at start=0x100000 20020314 one line patch stops at start=0x100000そうなっている。 20020314 の kernel が出来るとは思わなかったので、試さなかった。 @ 関係ないが kbd/screen のどちらか一方では ?:
と気になったので、
まず動く kernel を使って、
input-device output-device ttya screen 問題ない kbd ttya 次のように zstty0 で止る ? .... obio0 at pci0 dev 16 function 0: addr 0xf3000000 mesh0 at obio0 offset 0x10000 irq 12: 50MHz, SCSI ID 7 scsibus0 at mesh0: 8 targets, 8 luns per target zsc0 at obio0 offset 0x13000: irq 15,16 zstty0 at zsc0 channel 0u'動かない kernel だと、どちらの組合せも start=0x100000 で止る。 @ (多分余計な) consinit() を外すと問題解決:( つっこみ )
#2 [NetBSD] ちょっと気になる ofw_stack() は( つっこみ )
#3 [NetBSD] OpenBSD の pdisk
todd ってまさか
Todd Vierling
ではないよね、あの人は tv だったか。 ( つっこみ )
|
最近の日記 2024年07月03日 ・kicad oddity 2024年05月08日 ・comparison on ./buildsh tools 2024年05月06日 ・py-setuptools (python 3.11.9) ・make release took 1 hours and 10 min ・qemu invocation for 10.99.10 2024年05月05日 ・Windows 10 version ・serial connection ・bc bench 2024年05月04日 ・Trial on 10.99.10 ・another version (later trial) to succeed | ||