::log.2007
[ TOP | Recently ]
毬琳 / XML::RSS::LibXML / AGEIA PhysX / ipv6cp / 調布祭 / Live AKIBA-POP!! / 業務連絡 / E6850 & memtest / NWS-3260 / la fonera plus / なんというNEET / 2007-07-19 / ニセKAME? / md5にハマる / NetBSD の cgd と opencrypto / NetBSD の ctype と proftpd / HiFn 7955/vpn1401 / gpgexe / 同人誌委託コーナー中止 / twitter / BGMに #2 / BGMに / (゚∀゚)ラヴィ! / 2007-04-24 / しごと / らき☆すた / 2007-04-13 / 2007-04-06 / 2007-04-02 / 2007-04-01 / 2007-03-30 / MOSAIC.WAV / メモリ化け
2007-12-11 XML::RSS::LibXML
ramiel crashに伴いいろいろ再インスコしまくり。
rss generator に使っている XML::RSS::LibXML を最新にしたら、
以前ちゃんと生成できていたscriptがそのままでは動かなくなっていてはまる。
namespace拡張を厳密に扱われているようで
このように明示的に add_module しないと content:encoded が出力されなかった…
いろいろ修正してここの rss feed も復活。参考の為 script と source text を置いておこう。
rss generator に使っている XML::RSS::LibXML を最新にしたら、
以前ちゃんと生成できていたscriptがそのままでは動かなくなっていてはまる。
namespace拡張を厳密に扱われているようで
$rss->add_module('uri' => "http://purl.org/rss/1.0/modules/content/", 'prefix' => 'content');
このように明示的に add_module しないと content:encoded が出力されなかった…
いろいろ修正してここの rss feed も復活。参考の為 script と source text を置いておこう。
2007-12-05 AGEIA PhysX

フェイスで¥5,980-だったので買ってみた。
www.ageia.comでユーザ登録したけどloginできなくてSDK落とせねーよ。時間かかるのか?
ところでこれ、linux supportするとか言いつつ結局放置プレイ気味ですかそうですか。
追記:ユーザ登録して3日ほどしたらログインできるようになって、linux用のSDKやら見えるようになって、落とせた。これで使えるかな…
2007-11-27 ipv6cp
→ PPPoE [ses 0xd326] LCP (0xc021), length 16: LCP, Conf-Request (0x01), id 41, length 16 ← PPPoE [ses 0xd326] LCP (0xc021), length 21: LCP, Conf-Request (0x01), id 1, length 21 → PPPoE [ses 0xd326] LCP (0xc021), length 21: LCP, Conf-Ack (0x02), id 1, length 21 ← PPPoE [ses 0xd326] LCP (0xc021), length 16: LCP, Conf-Ack (0x02), id 41, length 16 ← PPPoE [ses 0xd326] CHAP (0xc223), length 40: CHAP, Challenge (0x01), id 1, Value 〜, Name 〜 → PPPoE [ses 0xd326] CHAP (0xc223), length 48: CHAP, Response (0x02), id 1, Value 〜, Name 〜 ← PPPoE [ses 0xd326] CHAP (0xc223), length 6: CHAP, Success (0x03), id 1, Msg → PPPoE [ses 0xd326] IP6CP (0x8057), length 16: IP6CP, Conf-Request (0x01), id 81, length 16 → PPPoE [ses 0xd326] LCP (0xc021), length 6: LCP, Term-Request (0x05), id 42, length 6 ← PPPoE [ses 0xd326] IPCP (0x8021), length 12: IPCP, Conf-Request (0x01), id 1, length 12 ← PPPoE [ses 0xd326] LCP (0xc021), length 22: LCP, Prot-Reject (0x08), id 1, length 22 → PPPoE [ses 0xd326] IP6CP (0x8057), length 6: IP6CP, Term-Request (0x05), id 82, length 6 ← PPPoE [ses 0xd326] LCP (0xc021), length 6: LCP, Term-Ack (0x06), id 42, length 6 → PPPoE PADT [ses 0xd326]
sakura internet を NetBSD の pppoe で繋げようとしたら、上のようになって繋がらなかった。
どうも ipv6cp が悪いっぽいので kernel config から INET6 外してみると、接続できた。
INET6 な kernel のままで ipv6cp を喋らせないようにはできないのか…
if_spppsubr.c は…そうなってないっぽいなぁ。
2007-11-17 業務連絡
ramiel沈黙しました。HDD逝ったっぽいです。
とりあえずメールだけ受けれる代替マシンを scc.execsw.org (61.192.220.225) に上げました。
pdl の bind を master にして @execsw.org の MX をこいつに向けてます。
ramielのアカウントそのまま移行してあります。sshで入ってmhでメール読むくらいはできます。
とりあえずメールだけ受けれる代替マシンを scc.execsw.org (61.192.220.225) に上げました。
pdl の bind を master にして @execsw.org の MX をこいつに向けてます。
ramielのアカウントそのまま移行してあります。sshで入ってmhでメール読むくらいはできます。
2007-11-10 E6850 & memtest
次期主力自宅鯖としてE6850マシンを仮組み。
同価格帯の Core 2 Quad Q6600 と悩んだのだが、消費電力低いし FSB1333MHz にできるし、Quad にしても使い潰せないしで、結局 Core 2 Duo E6850 にした。
Core 2 なので EMT64 はパフォーマンス出ないだろうから NetBSD/amd64 は入れずに
NetBSD/xen を入れ、xenで動かせるものはなるべく統合する方向なのでパワフルなものに。
というわけで何はなくともmemtest86+。
オンボードビデオがメインメモリ喰うのはいいのだが、それがうまくmemtest86+に伝わっておらず、
赤や緑の綺麗な画面でフリーズ…。
起動した瞬間に手動でmemory range設定してok
さすがに3.5Gのmemtestは一周4〜5時間かかるか…1〜2日エージングかな。
と思ったら1時間くらいで終わってた。walltimeの表示が変っぽい。
同価格帯の Core 2 Quad Q6600 と悩んだのだが、消費電力低いし FSB1333MHz にできるし、Quad にしても使い潰せないしで、結局 Core 2 Duo E6850 にした。
Core 2 なので EMT64 はパフォーマンス出ないだろうから NetBSD/amd64 は入れずに
NetBSD/xen を入れ、xenで動かせるものはなるべく統合する方向なのでパワフルなものに。
というわけで何はなくともmemtest86+。
オンボードビデオがメインメモリ喰うのはいいのだが、それがうまくmemtest86+に伝わっておらず、
赤や緑の綺麗な画面でフリーズ…。
起動した瞬間に手動でmemory range設定してok

2007-10-14 NWS-3260

このへん http://www.ascii.co.jp/pb/unixmag-dvd/event/ に持ってきます。

2007-08-23 la fonera plus
買ったまま放置していたfonera plusをちゃんといじってみた。
シリアルを継げたのだが、9-KEだとどうも電圧のせいでうまく入力できなかったので、ここを見ながら秋月でMAX232を買ってきてちゃんとしたシリアルケーブルを作る。
というわけで、うまくコンソールが繋がりました。
でもetherが1つしか見えません。kernel config は ae* at arbus? addr ? になってるんだけど、attach してくれなかった。
phyは5つも見えてるけど、どうすればいいんだろう。dualとかquadなetherのドライバ参考にすればわかるかな。調べとこう。
無線LANは、madwifiがMIPSの32bitmodeなドライバをいつまで経っても出してくれないんで、放置。
メールでつっつけば作ってくれるのかなぁ。
RedBoot(tm) bootstrap and debug environment [ROMRAM] OpenWrt certified release, version 1.1 - built 22:32:28, May 7 2007 Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc. Board: FON 2201 RAM: 0x80000000-0x81000000, [0x80040290-0x80fe1000] available FLASH: 0xa8000000 - 0xa87f0000, 128 blocks of 0x00010000 bytes each. == Executing boot script in 5.000 seconds - enter ^C to abort RedBoot> load -r -b 0x80041000 fon_kernel.bin Using default protocol (TFTP) Raw file loaded 0x80041000-0x802268df, assumed entry at 0x80041000 RedBoot> go 0x80041000 MIPS32/64 params: cpu arch: 32 MIPS32/64 params: TLB entries: 16 MIPS32/64 params: Icache: line = 16, total = 16384, ways = 4 sets = 256 MIPS32/64 params: Dcache: line = 16, total = 16384, ways = 4 sets = 256 picache_stride = 4096 picache_loopcount = 4 pdcache_stride = 4096 pdcache_loopcount = 4 Memory size: 0x01000000 [ Kernel symbol table missing! ] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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 4.99.26 (FONERA) #10: Tue Aug 7 18:07:24 JST 2007 ryo@moveq.lab.execsw.org:/usr/src/sys/arch/evbmips/compile/FONERA Atheros AR2315 total memory = 16384 KB avail memory = 13540 KB mainbus0 (root) cpu0 at mainbus0: 184.00MHz (hz cycles = 920000, delay divisor = 92) cpu0: MIPS 4KEc (Rev 2) (0x19064) Rev. 100 with software emulated floating point cpu0: 16KB/16B 4-way set-associative L1 Instruction cache, 16 TLB entries cpu0: 16KB/16B 4-way set-associative write-back L1 Data cache wdog0 at mainbus0: 5 second period arbus0 at mainbus0 com0 at arbus0 addr 0x11100000 cpu irq 0 misc irq 0: ns16550a, working fifo com0: console ae0 at arbus0 addr 0x10500000 cpu irq 2: Atheros AR531X 10/100 Ethernet ae0: Ethernet address 00:18:84:**:**:** ukphy0 at ae0 phy 16: Generic IEEE 802.3u media interface ukphy0: Marvell 88E6060 10/100 5-port PHY switch (OUI 0x000ac2, model 0x0008), rev. 7 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ukphy1 at ae0 phy 17: Generic IEEE 802.3u media interface ukphy1: Marvell 88E6060 10/100 5-port PHY switch (OUI 0x000ac2, model 0x0008), rev. 7 ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ukphy2 at ae0 phy 18: Generic IEEE 802.3u media interface ukphy2: Marvell 88E6060 10/100 5-port PHY switch (OUI 0x000ac2, model 0x0008), rev. 7 ukphy2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ukphy3 at ae0 phy 19: Generic IEEE 802.3u media interface ukphy3: Marvell 88E6060 10/100 5-port PHY switch (OUI 0x000ac2, model 0x0008), rev. 7 ukphy3: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ukphy4 at ae0 phy 20: Generic IEEE 802.3u media interface ukphy4: Marvell 88E6060 10/100 5-port PHY switch (OUI 0x000ac2, model 0x0008), rev. 7 ukphy4: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ar531x enable wlan ath at arbus0 addr 0x10000000 cpu irq 1 not configured arspi0 at arbus0 addr 0x11300000 cpu irq 0 misc irq 2: Atheros SPI controller spi0 at arspi0: SPI bus m25p0 at spi0 slave 0: unknown or unsupported device root on ae0 nfs_boot: trying DHCP/BOOTP nfs_boot: DHCP next-server: 0.0.0.0 nfs_boot: my_name=fonplus nfs_boot: my_domain=lab.execsw.org nfs_boot: my_addr=172.17.4.77 nfs_boot: my_mask=255.255.0.0 nfs_boot: gateway=172.17.4.1 root on 172.17.4.40:/src/boot/fonplus WARNING: no TOD clock present WARNING: using filesystem time WARNING: CHECK AND RESET THE DATE! Thu Aug 23 07:07:19 JST 2007 Starting file system checks: Setting tty flags. Setting sysctl variables: Starting network. Hostname: fonplus IPv6 mode: host Configuring network interfaces: ae0. add net default: gateway 172.17.4.1 Adding interface aliases: Building databases... Starting syslogd. Mounting all filesystems... Clearing /tmp. Setting securelevel: kern.securelevel: 0 -> 1 swapctl: adding /var/tmp/swapfile as swap device at priority 0 Starting virecover. Starting local daemons:. Updating motd. Starting inetd. Starting cron. Thu Aug 23 07:09:14 JST 2007 NetBSD/evbmips (fonplus) (console) login:
USBは基板にパターンが残ってるだけで使えないし、CPUのクロックもメモリ容量も前のfoneraと同じだし、Etherが2つあってもこれといって遊べる要素はないなぁ…
2007-07-19
家のネットワークのmtuを9000で調整したのだが、NEWS5000みたいな古いマシンはしょうがないとして、
VMWareのホストOSがmtu9000で動いているのにbridgeにしてるゲストがmtu9000にできないのはいかがなもんか。
この状態だとnfs mountもできず困ったので
とかやってごまかすことにした。
しかし nfs の 8kbyte block が 1 packet で読めるのはとても気分がいい。
これいじってて気づいたのだが、OpenBSD の route は tableid の指定ができるようになってた。
プロセス毎に独立のルーティングテーブル使えるようにするのもすぐ出来そうだな。
VMWareのホストOSがmtu9000で動いているのにbridgeにしてるゲストがmtu9000にできないのはいかがなもんか。
この状態だとnfs mountもできず困ったので
#!/bin/sh set_mtu1500() { _host=$1 if ping -c1 -w1 $_host > /dev/null; then _macaddr=`arp $_host | cut -f4 -d' '` echo $_host $_macaddr arp -s $_host $_macaddr temp route change $_host -mtu 1500 fi } setmtu1500 host1 setmtu1500 host2 setmtu1500 host3 :
とかやってごまかすことにした。
しかし nfs の 8kbyte block が 1 packet で読めるのはとても気分がいい。
これいじってて気づいたのだが、OpenBSD の route は tableid の指定ができるようになってた。
プロセス毎に独立のルーティングテーブル使えるようにするのもすぐ出来そうだな。
2007-07-06 md5にハマる
/usr/include/md5.h は MD5Init(), MD5Update(), MD5Final() /usr/include/openssl/md5.h は MD5_Init(), MD5_Update(), MD5_Final()
しかもどちらとも同じ名前で定義してる中身の違う MD5_CTX という構造体を扱うので混ぜるな超危険…
俺の1時間返せ
2007-07-03 NetBSD の cgd と opencrypto
つらつらとcgdのソースを見たけど、やっぱり opencrypto を使った非同期暗号はやってなかった。
というか cgd_crypto.c に 3des とか aes を CPU でベタで処理するルーチンが…。使い回しさえされていない状態。
幸い cgdiodone() から biodone() を呼ぶようになってるので、ここでうまいこともう一段非同期にopencrypto を呼んで、帰ってきた所で biodone() を呼ぶようにしてやればいいのかな。めんどくさいなぁ。puffs で適当なファイ
ルシステム作ったほうが簡単じゃないかという気もしてきた。
2007-07-02 NetBSD の ctype と proftpd
NetBSD で動いてる proftpd の鯖に日本語ファイル置くとなんかまともに動かねーなーと思ってよく調べたら
isspace() に char を渡してたからだった。
EUC なんで char が -1 未満にふっとんで ctype[] の判定配列のおとといの方向を参照していた。
これは大昔 NEWS-OS でもよく見つかったバグだなぁ。
当然 NetBSD の isspace() が悪い…のではなく、呼ぶ側が悪いので、呼んでる所を修正しようとしたが
たくさんあってめんどくさかったので gcc -funsigned-char でごまかしてみる。
予想に反してちゃんと動いたのでこれでいいや。
isspace() に char を渡してたからだった。
EUC なんで char が -1 未満にふっとんで ctype[] の判定配列のおとといの方向を参照していた。
これは大昔 NEWS-OS でもよく見つかったバグだなぁ。
当然 NetBSD の isspace() が悪い…のではなく、呼ぶ側が悪いので、呼んでる所を修正しようとしたが
たくさんあってめんどくさかったので gcc -funsigned-char でごまかしてみる。
予想に反してちゃんと動いたのでこれでいいや。
2007-07-02 HiFn 7955/vpn1401
ゲット。お決まりなのでベンチマーク。赤い部分がアクセラレーション。
NetBSD-current にて hifn を有効にして option crypto (swcrypto無し) で作ればok。
ちなみに NetBSD/i386 AMD-Geode NX 1500 1.0GHz なので CPU はそれほど速くない。
sysctl の kern.usercrypto、kern.userasymcrypto、kern.cryptodevallowsoft あたりで
ユーザランドからは使えなくしたりと動作変更可能。基本的にデフォのままで問題なし。
しかしopensslのコマンドラインは使いにくいなぁ…
NetBSD-current にて hifn を有効にして option crypto (swcrypto無し) で作ればok。
ちなみに NetBSD/i386 AMD-Geode NX 1500 1.0GHz なので CPU はそれほど速くない。
openssl speed -elapsed -engine cryptodev -evp des-cbc des-cbc engine "cryptodev" set. You have chosen to measure elapsed time instead of user CPU time. To get the most accurate results, try to run this program when this computer is idle. Doing des cbc for 3s on 16 size blocks: 1736473 des cbc's in 3.01s Doing des cbc for 3s on 64 size blocks: 455862 des cbc's in 3.01s Doing des cbc for 3s on 256 size blocks: 115361 des cbc's in 3.01s Doing des cbc for 3s on 1024 size blocks: 28939 des cbc's in 3.01s Doing des cbc for 3s on 8192 size blocks: 3621 des cbc's in 3.01s Doing des-cbc for 3s on 16 size blocks: 101509 des-cbc's in 3.01s Doing des-cbc for 3s on 64 size blocks: 99510 des-cbc's in 3.01s Doing des-cbc for 3s on 256 size blocks: 81711 des-cbc's in 3.01s Doing des-cbc for 3s on 1024 size blocks: 51689 des-cbc's in 3.01s Doing des-cbc for 3s on 8192 size blocks: 11372 des-cbc's in 3.01s OpenSSL 0.9.8e 23 Feb 2007 built on: NetBSD 4.99.19 options:bn(32,32) md2(int) rc4(ptr,int) des(ptr,risc2,16,long) aes(partial) idea(int) blowfish(ptr2) compiler: gcc version 4.1.2 20070110 (prerelease) (NetBSD nb1 20070110) available timing options: USE_TOD HZ=100 [sysconf value] timing function used: gettimeofday The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes des cbc 9244.76k 9693.87k 9812.78k 9845.96k 9856.04k des-cbc 539.70k 2116.22k 6950.70k 17587.43k 30954.90k
# openssl speed -elapsed -engine cryptodev aes-128-cbc -evp aes-128-cbc engine "cryptodev" set. You have chosen to measure elapsed time instead of user CPU time. To get the most accurate results, try to run this program when this computer is idle. Doing aes-128 cbc for 3s on 16 size blocks: 2718783 aes-128 cbc's in 3.01s Doing aes-128 cbc for 3s on 64 size blocks: 699137 aes-128 cbc's in 3.01s Doing aes-128 cbc for 3s on 256 size blocks: 177349 aes-128 cbc's in 3.01s Doing aes-128 cbc for 3s on 1024 size blocks: 43996 aes-128 cbc's in 3.01s Doing aes-128 cbc for 3s on 8192 size blocks: 5569 aes-128 cbc's in 3.01s Doing aes-128-cbc for 3s on 16 size blocks: 101418 aes-128-cbc's in 3.01s Doing aes-128-cbc for 3s on 64 size blocks: 99435 aes-128-cbc's in 3.01s Doing aes-128-cbc for 3s on 256 size blocks: 77687 aes-128-cbc's in 3.01s Doing aes-128-cbc for 3s on 1024 size blocks: 51362 aes-128-cbc's in 3.01s Doing aes-128-cbc for 3s on 8192 size blocks: 11248 aes-128-cbc's in 3.01s OpenSSL 0.9.8e 23 Feb 2007 built on: NetBSD 4.99.19 options:bn(32,32) md2(int) rc4(ptr,int) des(ptr,risc2,16,long) aes(partial) idea(int) blowfish(ptr2) compiler: gcc version 4.1.2 20070110 (prerelease) (NetBSD nb1 20070110) available timing options: USE_TOD HZ=100 [sysconf value] timing function used: gettimeofday The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes aes-128 cbc 14466.84k 14867.30k 15085.28k 14969.00k 15158.90k aes-128-cbc 539.17k 2114.62k 6608.27k 17476.06k 30616.83k
sysctl の kern.usercrypto、kern.userasymcrypto、kern.cryptodevallowsoft あたりで
ユーザランドからは使えなくしたりと動作変更可能。基本的にデフォのままで問題なし。
しかしopensslのコマンドラインは使いにくいなぁ…
2007-06-04 gpgexe
必要(?)に迫られたのでgzexeを改造して gpgexe を作る。
実行時にdecryptしたファイルをプログラム終了後に消すのではなく、execした直後に消したいなぁ。
(sleep 1; rm -Pf ...) & もあんまり美しくないし、何かいい方法はないか。
まぁ /tmp は mfs で、もうだめぽ状態になったらブレーカ落とすからいいか。
どうでもいいけどベースにしたNetBSD(OpenBSD)のgzexeは、圧縮時にtmpにファイルを残したままなんだけどいいのかな。
バグじゃねーの?
実行時にdecryptしたファイルをプログラム終了後に消すのではなく、execした直後に消したいなぁ。
(sleep 1; rm -Pf ...) & もあんまり美しくないし、何かいい方法はないか。
まぁ /tmp は mfs で、もうだめぽ状態になったらブレーカ落とすからいいか。
どうでもいいけどベースにしたNetBSD(OpenBSD)のgzexeは、圧縮時にtmpにファイルを残したままなんだけどいいのかな。
バグじゃねーの?
2007-05-30 同人誌委託コーナー中止
2007-04-24
パンツァーすげええええEEEEEEEEEEEEE!
http://www.nicovideo.jp/watch/sm190691 http://www.nicovideo.jp/watch/sm191252
http://www.nicovideo.jp/watch/sm190691 http://www.nicovideo.jp/watch/sm191252
2007-04-01
Plagger に使ってる DB_File が何かの拍子にすぐ物故割れるので
FSDB_File とゆーものを作った。(だいぶ前だけど)
で $hash{foo} の実体が ./cache/ac/b/acbd18db4cc2f85cedef654fccc4a4d8 となる。
ただし、さしあたって必要無いmethodは作ってないので誰か(ry
FSDB_File とゆーものを作った。(だいぶ前だけど)
use FSDB_File; tie my %hash, 'FSDB_File', "./cache";
で $hash{foo} の実体が ./cache/ac/b/acbd18db4cc2f85cedef654fccc4a4d8 となる。
# echo -n foo|md5 acbd18db4cc2f85cedef654fccc4a4d8 # perl -mFSDB_File -e 'tie my %hash,"FSDB_File","./cache"; $hash{foo}="bar\n"' # cat cache/ac/b/acbd18db4cc2f85cedef654fccc4a4d8 bar
ただし、さしあたって必要無いmethodは作ってないので誰か(ry
2007-03-25 MOSAIC.WAV
調子のってずっと聞いてたらマジデ洗脳されてきた。
http://www.nicovideo.jp/?next_url=/watch/sm61881
外山恒一やばい。
http://www.youtube.com/watch?v=ccwpbsJsWvM 【都知事選】「政府転覆しかない」「当選したら私もビビる」…外山恒一氏の政見放送(動画あり)
http://news23.2ch.net/test/read.cgi/news/1174786947/
http://www.nicovideo.jp/?next_url=/watch/sm61881
外山恒一やばい。
http://www.youtube.com/watch?v=ccwpbsJsWvM 【都知事選】「政府転覆しかない」「当選したら私もビビる」…外山恒一氏の政見放送(動画あり)
http://news23.2ch.net/test/read.cgi/news/1174786947/
2007-01-04 メモリ化け
NetBSDなAthlon64x2マシンがたまに落ちると思ったら、どうもメモリが化けてるっぽい落ち方をしている。ログは↓
subr_pool.cのPI_MAGIC(deadbeef)がdeadbeebになっている。完璧にメモリだなぁ。
確認にmemtest86+を回してたらテスト3週目で一回だけエラーが出た。すぐに出ない所がいやらしい。
しょうがないので化ける領域を使わないよう細工してごまかすことにする。
uvm_page_physload() から uvm_pagefree() で空きページをフリーリストに登録してる個所で、該当ページは登録スキップさせてみた。強引だなー。
綺麗に書くならば machdep.c から uvm_page_physload() 呼ぶ時に、該当部分以外を分割してphysloadしてやるのが正解だろうが、めんどくさいからいいや。
これでしばらく様子見。
他のアドレスも化けるようであれば、素直にあきらめよう。
pool_get(vmmpepl): free list modified: magic=deadbeeb, page=〜
subr_pool.cのPI_MAGIC(deadbeef)がdeadbeebになっている。完璧にメモリだなぁ。
確認にmemtest86+を回してたらテスト3週目で一回だけエラーが出た。すぐに出ない所がいやらしい。
しょうがないので化ける領域を使わないよう細工してごまかすことにする。
uvm_page_physload() から uvm_pagefree() で空きページをフリーリストに登録してる個所で、該当ページは登録スキップさせてみた。強引だなー。
綺麗に書くならば machdep.c から uvm_page_physload() 呼ぶ時に、該当部分以外を分割してphysloadしてやるのが正解だろうが、めんどくさいからいいや。
これでしばらく様子見。
他のアドレスも化けるようであれば、素直にあきらめよう。
EOF