hns - 日記自動生成システム - Version 2.19.9

先月 2002年06月 来月
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2002年06月20日(木) 旧暦 [n年日記]

#1 [NetBSD] port-powerpc-ja

本当は Matt T* とかの人達が port-master に相談もなく、 いじり始めて、遠くに行ってしまったのが問題なのですよ。 だから i* さんが来たのが、ちょっとそんな感じなのかなと受取った人もいた。 もちろん僕はそうは思わなかったけれど。
auto-boot? true は iBook (1999) でも動くことがあるのだけれど、 僕が何か勘違いしているのだろう。

#2 [Security] Apache 1.3.26 2.0.39 だそうで


#3 [NetBSD] daily build

G4/400 AGP na 版
makoto@u 6:51:55/020620(...usr/src)# time ./build.sh -D $DESTDIR -R $RELEASEDIR >& /export/20020619-tar/log-build.sh
10639.730u 3858.354s 4:43:22.79 85.2% 0+0k 20367+421704io 16570584pf+218w
makoto@u 11:35:43/020620(...usr/src)# pwd
/export/20020619-tar/usr/src
>> NetBSD/macppc OpenFirmware Boot, Revision 1.6
>> makoto@ibook, Mon May 27 16:28:24 JST 2002
59392+219184=0x5dfa54
 start=0x800000
trap type 200 at a1b924
Press a key to panic.
panic: trap
Stopped in pid 0 () at 0xa0f3b4:    lwz r0,r1,0x14
db> _

method <`usb-kbd-ihandles> not found; ihandle=ffbc8740 phandle=ff931210

入力不可
前と変った。
0021b70c <softclock>:
...
  21b900:       48 0f e7 6d     bl      31a06c <splraise>
  21b904:       3b c0 00 00     li      r30,0
  21b908:       81 19 97 60     lwz     r8,-26784(r25)
  21b90c:       2c 08 00 00     cmpwi   r8,0
  21b910:       40 82 ff 0c     bne     21b81c <softclock+0x110>
  21b914:       80 1f 00 08     lwz     r0,8(r31)
  21b918:       2c 00 00 00     cmpwi   r0,0
  21b91c:       40 82 00 14     bne     21b930 <softclock+0x224>
  21b920:       39 20 ff ff     li      r9,-1
 21b924:       39 40 ff ff     li      r10,-1
きのうの patch を当てたら、もう少し先に行った。
...
3839312+218576 [189312+155988]=0x433280
 start=0x100000

console keyboard type: USB
[using 345952 bytes of netbsd ELF symbol table ]
_


method <`usb-kbd-ihandles> not found; ihandle=ffbc8740 phandle=ff93120
method <`usb-kbd-ihandle> not found; ihandle=ffbc8740 phandle=ff93120
method <`adb-kdb-ihandle> not found; ihandle=ffbc8740 phandle=ff93120

 _
入力不可


2002年06月19日(水) 旧暦 [n年日記]

#1 [NetBSD] start=0x100000 と __syncichache

きょう試すことは、
sys/arch/macppc/macppc/machdep.c
sys/lib/libkern/arch/powerpc/syncicache.c    
                                             machdepc. syncicache.c
(1) consinit removed                         x        
(2) cpu_probe_cache/before install_extint    x

(3) syncicache.c (half) reverted to 20020313           x
(4) add printf-cacheinfo                     x
(5) - no cninit                              x
(6) - ddb init                               x
きのうまでのその結果は
 (1)   (2)   (3)
 YES               works
 YES   YES         works
       YES         stops after start=0x100000
       YES   YES   works
それから consinit() の中の、 cninit ddb init のどちらが悪さをしているかを調べる。
              +----syncicache-half-revert
              |
              |     +-- add printf-cacheinfo
              |     |
              |     |     +-- no cninit
              |     |     |
 (1)   (2)   (3)   (4)   (5)
             YES   YES        works (*1)
             YES   YES   YES  works (*1)
                   YES   YES  works (*1)
(*1) but no cacheinfo printed --- to early to use printf
cninit の方が問題あるということ。 更に来た。
        +-------- Temporarily set up cache_info
        |
        |     +----syncicache-half-revert
        |     |
        |     |     +-- add printf-cacheinfo
        |     |     |
        |     |     |     +-- no cninit
        |     |     |     |
 (1)   (2a)  (3)   (4)   (5)
       YES   YES              works
       YES                    works
Allen Brigges がこれだよというのを送って来て、めでたく解決となった。 1.6B に当てるものも大丈夫。

#2 [NetBSD] 1.6B ts 版

cc -O2 -pipe -Werror -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wno-uninitialized -Wno-main -msoft-float -ffreestanding -I. -I../../../../arch -I../../../../arch/powerpc -I../../../.. -nostdinc -DDIAGNOSTIC -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -Dmacppc -c /export/20020615/syssrc/sys/arch/macppc/compile/GENERIC/../../../../arch/powerpc/powerpc/trap.c
cc1: warnings being treated as errors
/export/20020615/syssrc/sys/arch/macppc/compile/GENERIC/../../../../arch/powerpc/powerpc/trap.c: In function `trap':
/export/20020615/syssrc/sys/arch/macppc/compile/GENERIC/../../../../arch/powerpc/powerpc/trap.c:237: warning: passing arg 3 of `ktrsyscall' makes pointer from integer without a cast
/export/20020615/syssrc/sys/arch/macppc/compile/GENERIC/../../../../arch/powerpc/powerpc/trap.c:237: too many arguments to function `ktrsyscall'
*** Error code 1
sys/kern/kern_ktrace.c:ktrsyscall(struct proc *p, register_t code, register_t args[])
一か所変更。
--- sys/arch/powerpc/powerpc/trap.c-1.23        Wed Jun  5 18:15:28 2002
+++ sys/arch/powerpc/powerpc/trap.c     Wed Jun 19 15:14:57 2002
@@ -234,7 +234,7 @@
 
 #ifdef KTRACE
                        if (KTRPOINT(p, KTR_SYSCALL))
-                               ktrsyscall(p, code, argsize, params);
+                               ktrsyscall(p, code, params);
 #endif
segfault storm... って syncicache かなぁ。調べよう。
  1. sys/lib/libkern/arch/powerpc/syncicache.c
  2. http://cvsweb.netbsd.org/cgi-bin/cvsweb.cgi/syssrc/lib/libc/arch/powerpc/gen/syncicache.c lib/libc/arch/powerpc/gen/syncicache.c
  3. ただし ts 版では、
    sys/arch/powerpc/powerpc/powerpc_machdep.c の最後
1 は使わないように出来るが 2 は出来なくて libc に入ってしまう ? だから..


2002年06月18日(火) 旧暦 [n年日記]

#1 [NetBSD] start=0x100000 と __syncichache

試すことを整理して見よう。

#2 [Namazu] Devel::DProf って初めて知った


#3 [Security] chunked encoding vulnerability

「1.3.x は stack overflow から (child が) segfault されてしまう」と読めばいいのかな。

#4 [NetBSD] port-powerpc-ja のメールが何だか飛び飛びだと思ったら

:0
* ^Return-Path:.*port-powerpc-ja-return
        {
        :0
        * ^Content-Type: text/plain; charset=ISO-2022-JP
        ml/port-powerpc-ja/.
        :0
        ml/port-powerpc-ja-junk/.
        }
したの忘れていて、junk の方は見ていなかった。 いづれにしても、これはだめみたい。In-Reply-To: 付けておけば もう少しましかな。あと tsubai さん特例入れておけば。多分。


2002年06月17日(月) 旧暦 [n年日記]

#1 [NetBSD] start=0x100000 で止る問題

20020314+(libkern)0313 動く:

20020407 kbd/screen では動かない:

20020407 に逆 patch を当てる(R)と動く:

ただし
  • macppc/macppc/conf.c は 1.37 でなく 1.38 を
  • powerpc/powerc/powerpc_machdep.c は 1.10 でなく 1.11 を
採用

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 だったか。


2002年06月15日() 旧暦 [n年日記]

#1 [NetBSD] Tanzania stops at start=0x10000

StarMax も 4400 も条件は同じ。
どちらの機械も、(userland は 1.6_BETA1 だとして) 

kernel が 1.6_BETA1 等の場合
   serial     動く 
   kbd/screen 動かない。 (start=0x10000 で止る)

kernel が椿井版だと、
makoto@ibook:/export/20020526-src-sys/sys/arch/macppc/compile/
   serial     動く 
   kbd/screen 
              segmentation fault の嵐になる

sys/arch/macppc/stand/ofwboot/boot.c から start=0x.. の部分:

296         entry = marks[MARK_ENTRY];
297         ssym = (void *)marks[MARK_SYM];
298         esym = (void *)marks[MARK_END];
299 
300         printf(" start=0x%x\n", entry);
301         __syncicache((void *)entry, (u_int)ssym - (u_int)entry);
302         chain((void *)entry, bootline, ssym, esym);
303 
304         OF_exit();
305 }

__syncicache か chain:

chain の方は sys/arch/macppc/stand/ofwboot/boot.c
118 static void
119 chain(entry, args, ssym, esym)
120         void (*entry)();
121         char *args;
122         void *ssym, *esym;
...
138         OF_chain((void *)RELOC, end - (char *)RELOC, entry, args, l);
この引数の中で(今)使われているのは args, l だけ

OF_chain:

sys/arch/macppc/stand/ofwboot/Locore.c
519 OF_chain(virt, size, entry, arg, len)
520         void *virt;
521         u_int size;
522         void (*entry)();
523         void *arg;
524         u_int len;
525 {
526         /*
527          * This is a REALLY dirty hack till the firmware gets this going
528          */
529 #if 0
530         OF_release(virt, size);
531 #endif
532         entry(0, 0, openfirmware, arg, len);
533 }

この entry は同じ中に asm で書いてある。 最初の boot.c の中に出て来る MARK_SYM MARK_END などは、 sys/lib/libsa/loadfile.h に書いてある。
42 #define MARK_START      0
43 #define MARK_ENTRY      1
44 #define MARK_NSYM       2
45 #define MARK_SYM        3
46 #define MARK_END        4
47 #define MARK_MAX        5

time warp .. 20020310:

/export/20020310/src/tools/obj/tools.NetBSD-1.5ZC-powerpc/bin/powerpc--netbsd-gcc -O2 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Werror -nostdinc -isystem /export/20020310/dest/usr/include -c /export/20020310/src/usr.bin/vmstat/vmstat.c
/export/20020310/src/usr.bin/vmstat/vmstat.c: In function `dopool':
/export/20020310/src/usr.bin/vmstat/vmstat.c:1137: structure has no member named `pr_pagesz'
/export/20020310/src/usr.bin/vmstat/vmstat.c:1141: structure has no member named `pr_pagesz'
*** Error code 1

3467.141u 1488.008s 1:48:10.75 76.3% 0+0k 10499+272669io 6960pf+92w

time warp .. 20020222:

/export/20020222/src/distrib/macppc/floppies/ramdisk/../../../../bin/rcp/../../usr.bin/rlogin/kcmd.c:56: kerberosIV/kparse.h: No such file or directory
nbmkdep: compile failed.
*** Error code 1

20020314 + 20020313:



2002年06月14日(金) 旧暦 [n年日記]

#1 [検索機関] PageRankを上げるために

いつも美しい(日記の) URL の 馬場さん のところから。 (最近まで なつみかんの URL が違っていたので直した)

#2 [URL] ソースコードを読むための技術


#3 [NetBSD] ./build.sh

pax: Unable to access ./usr/bin/hesinfo <No such file or directory>
..
..
5603.834u 1893.609s 2:35:00.31 80.6% 0+0k 17367+392372io 17633pf+120w
ttyp0:root@quick 16:25:02/020614(/export/src)#
何か間違えたかな。それと、少し変更して試している。
ttyp0:root@quick 17:25:29/020614(/export/src)# diff sys/arch/macppc/macppc/machdep.c{-1.113,}
915c915
<
---
> printf(" ** (1) after ofb_cnattach\n");
932a933
> printf(" ** (2) NAKBD > 0 \n");
942a944
> printf(" ** (3) NAKBD > 0 \n");
985a988
> printf(" ** (3) NAKBD > 0 \n");
996a1000
> printf(" ** (4) NAKBD > 0 \n");
1006a1011
> printf(" ** (5) NAKBD > 0 \n");
全く効果なし(というか何も表示されない)。


2002年06月13日(木) 旧暦 [n年日記]

#1 [Web] 広告を貼ろうかなと思ったり


#2 [NetBSD] start=0x10000 とか表示しているのは

sys/arch/macppc/stand/ofwboot/boot.c の
300         printf(" start=0x%x\n", entry);
301         __syncicache((void *)entry, (u_int)ssym - (u_int)entry);
302         chain((void *)entry, bootline, ssym, esym); 
303  
304         OF_exit();
305 } 
この __syncicache は(最近良く見る字の気がするけど)
sys/lib/libkern/arch/powerpc/syncicache.c で定義されている。 ただし ts 版では、
sys/arch/powerpc/powerpc/powerpc_machdep.c の最後で定義している。 (最近 build.sh 出来なかったのと関係ありそう) その他
lib/libc/arch/powerpc/gen/syncicache.c でも定義している。

#3 [NetBSD] PM4400

とりあえず、動いた。何が原因なのか、これから調べる。 僕の 4400の ttya の入力はこわれているのではないかという説がある。 以下は ttyb を使った。boot.fs をいろいろ試そう。
0 > boot 
OF_open bootpath=scsi/sd@3
read stage 2 blocks: 01234567. done!
starting stage 2...

>> NetBSD/macppc OpenFirmware Boot, Revision 1.6
>> (root@quick, Tue Jun 11 12:29:56 JST 2002)
3718752+128844=0x3ab7c0
 start=0x800000
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 1.6_BETA1 (INSTALL) #3: Thu Jun 13 11:12:19 JST 2002
    root@quick:/export/20020610/usr/src/sys/arch/macppc/compile/INSTALL

#4 [NetBSD] 意味もなく ./build.sh をもう一度。

別の機械 G4/400 AGP の負荷試験として、
makoto@u  16:58:04/020613(...usr/src)# time ./build.sh  -R $RELEASEDIR -D $DESTDIR >& ../log
10621.476u 3776.501s 4:39:29.69 85.8%   0+0k 20057+421963io 16571325pf+314w
makoto@u  21:37:59/020613(...usr/src)# 
20020610 の src から。start の gcc は egcs-1.1.2。

#5 [INN] 最近 400k とか 500k の記事が山ほど来るが

newsfeeds なんかで制限出来たっけ ? japan.books だけの合計で 100M くらいあった。 japan.music.heavy-metal も似たようなもの。


2002年06月12日(水) 旧暦 [n年日記]

#1 [NetBSD] (gdb) print db_onpanic=0

教えてもらったので、やって見る。
ttyp1:root@quick  8:31:22/020612(/)# gdb --write  netbsd.3
GNU gdb 5.0nb1
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "powerpc--netbsd"...(no debugging symbols found)...
(gdb) print db_onpanic=0
$1 = 0
(gdb) q
ttyp1:root@quick  8:31:57/020612(/)# ls -lt netbs*

#2 [日本語] 誤差 = Error

誤差制御演算子 確かに誤差 → error ではあるが error →誤差 ではない。
Error → エラー
としているのも良くない習慣だと思う。 Error → 問題・誤り・障害・誤差・誤謬
しかし問題 → error problem issue となるので、
Error → 問題
も時として(かなり)良くないことがあるだろう。
Error → 誤謬(ごびゅう)
ではちょっとなじみがなさそうだし。
とけちを付けて見たものの、言語の中で、 これだけ便利な情報が Web で見られる とは、有難いことだ。
elsif -> elseif Perl との違いで覚えておく。
制御構造に関する別の構文 → 内容を見る前に、細いことが気になって来ると、良くないが..
HTMLブロック"A = 5"は
HTML 部分 "A は 5 に等しい" は
PHP web icon の部分のうち、左のプラスの印の方をクリックすると、 何やら feedback 出来そうだが、 これは日本語の方に行くのかなぁ。
... ではなさそう。


2002年06月11日(火) 旧暦 [n年日記]

#1 [NetBSD] not exclusive lock holder 1008730187 unlocking

>> NetBSD/macppc OpenFirmware Boot, Revision 1.6
>> (makoto@ibook, Mon May 27 16:28:24 JST 2002)
3839052+219140 [187920+155996]=0x432e20
 start=0x100000
panic: lockmgr: pid 0, not exclusive lock holder 1008730187 unlocking
Stopped in pid () at   0x30f214:	lwz r0,r1, 0x14
db> 
という表示は sys/kern/kern_lock.c の 715 行目付近かららしい
457 lockmgr(__volatile struct lock *lkp, u_int flags,
458     struct simplelock *interlkp)
.....
528  switch (flags & LK_TYPE_MASK) {
.....
707  case LK_RELEASE:
708          if (lkp->lk_exclusivecount != 0) {
709                  if (WEHOLDIT(lkp, pid, cpu_id) == 0) {
710                          if (lkp->lk_flags & LK_SPIN) {  
711                                  panic("lockmgr: processor %lu, not "
712                                      "exclusive lock holder %lu "
713                                      "unlocking", cpu_id, lkp->lk_cpu);
714                          } else {
715                                  panic("lockmgr: pid %d, not "
716                                      "exclusive lock holder %d "
717                                      "unlocking", pid,
718                                      lkp->lk_lockholder);
719                          }                   
sys/kern/init_main.c
    192         KERNEL_LOCK_INIT();
    ..
    348         /* Lock the kernel on behalf of proc0. */
    349         KERNEL_PROC_LOCK(p);

というのがあるが、多分 MULTIPROCESSOR 以外は何もしない(はず) 同じく
    447         /*
    448          * Get the vnode for '/'.  Set filedesc0.fd_fd.fd_cdir to
    449          * reference it.
    450          */
    451         if (VFS_ROOT(mountlist.cqh_first, &rootvnode))
    452                 panic("cannot find root vnode");
    453         cwdi0.cwdi_cdir = rootvnode;
    454         VREF(cwdi0.cwdi_cdir);
    455         VOP_UNLOCK(rootvnode, 0);
    456         cwdi0.cwdi_rdir = NULL;
この 455 行目かな。 でももう一度最初から見直したら Copyright を表示する前のような。

curcpu() が気になったので:

(ts 版) sys/arch/macppc/include/cpu.h より
  77 #ifdef MULTIPROCESSOR
  ...
  80 static struct cpu_info *curcpu(void);
  ...
  91 static __inline struct cpu_info *
  92 curcpu()
  93 {
  94         struct cpu_info *ci;
  95 
  96         asm volatile ("mfsprg %0,0" : "=r"(ci));
  97         return ci;
  98 }
  99 
 ...
 111 #else
 ...
 116 #define curcpu()                (&cpu_info_store)
 ...
 119 #endif /* MULTIPROCESSOR */
(na 版の時も sys/arch/powerpc/include/cpu.h に書いてあるだけで、define の内容は同じ) でもって sys/arch/macppc/macppc/cpu.c に
struct cpu_info cpu_info_store;
となっていて cpu_info[] にいろいろ書込んだり..

consinit() -> cninit() の最後の問題の気が:

(字が入力出来ないし) 一番初めの中の 709 行目の
709                  if (WEHOLDIT(lkp, pid, cpu_id) == 0) {
cpu_id がきっと変なのかも。



最近の日記
2025年02月13日
dvipdfmx ICC profile format spec. version 4.3.0
2025年01月29日
ham/wsjtx
2025年01月27日
wip/wsjtx 5.4.2
2025年01月25日
ham/wsjtx
2025年01月15日
今更 advent calendar
以上、9 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)