日記ブログ、または雑多なメモ

X31がダメなら最適化でしのぐしか!とい...




快感チェンジ単行本発売
広告

 X31がダメなら最適化でしのぐしか!ということで600Xのkernelを2.6にすることにした。 (あまり脈絡なし

 とりあえず、現時点で最新の2.6.3系のソースを落としてきてPIII coppermineでコンパイル。 でもって、2.6でAPM復帰時に固まる件の解決を図らねばならない。 これはちょちょっと検索したら600Xで固まらなくなるpatchなどという、そのものぴったりのものがあっさり見つかった。 patchは以下の通り。

--- linux/drivers/block/ll_rw_blk.c_ORIG Mon Jan 5 20:51:28 2004
+++ linux/drivers/block/ll_rw_blk.c Mon Jan 5 20:35:23 2004
@@ -2690,6 +2690,9 @@
for (i = 0; i < ARRAY_SIZE(congestion_wqh); i++)
init_waitqueue_head(&congestion_wqh[i]);

+#if defined(__i386__) /* Do we even need this? */
+ outb_p(0xc, 0x3f2);
+#endif
return 0;
}

 patchの効き具合はばっちりで、サスペンド可能になった。

 続いて、ndiswrapper-cvsがうんともすんとも動かない。 やられた。 ドライバを読み込むとカーネルパニック。 困った。 ここは正攻法で本家ページのPublic Forumを眺めてみる(じー)。 その中に、kernel2.6でカーネルパニックが起きる場合はkernel configのProcesser type and featuersのUse register argumentsを切ると良し、とあった。 で、試したところ、見事ぱにくる事もなく起動した。 とりあえず安堵。

 いや待て。 音が鳴ってないではないか。 手動でsnd-cs46xx.koを読み込ませてもunknown symbolsで読み込めません、となる。 特に変な設定はしてないつもりなのだが。 思いつくのはkernel configのサウンド設定くらいだが、ISAとPCIの両方でCS46系のモジュールを設定してるのが悪いのかしら、と思ってPCIだけにしてコンパイル。 してみるとモジュールを読んでくれた。 うーむ、因果関係不明。

 と、いうわけでkernel2.6.3に移行完了。 タイミングスケジューラがナントカカントカで2.4より速くなってるらしいのだが、もちろん体感はない。 以上!


 ちなみにwineのcvs-glibc23-openglが23日版辺りからおかしい。 しばらく様子見っぽい。
- C'sGallery Blogっぽく見えるシステム3.2 -
小武 (管理人) eta2@tim.hi-ho.ne.jp