Vine Linux バグトラッキングシステム - Vine Linux
課題の詳細を表示
0000407Vine Linux1 バグ公開2006-11-29 19:352006-12-30 22:10
anonymous 
 
不明 
完了再現不可 
4.0 
 
x86
なし
0000407: 915GMでの動作が遅い
915GMのCHIPSETにINSTALLするとやたらに遅い(ASUS Z91EのBAREBONE NOTE)
設定されていません。
課題の履歴
2006-11-29 19:35anonymous新規課題
2006-12-06 06:55anonymousコメント追加: 0002159
2006-12-09 22:10anonymousコメント追加: 0002160
2006-12-30 22:10kazutaka状態新規 => 完了
2006-12-30 22:10kazutaka解決状況不明 => 再現不可
2006-12-30 22:10kazutakaコメント追加: 0002161

コメント
(0002159)
anonymous   
2006-12-06 06:55   
> 915GMのCHIPSETにINSTALLするとやたらに遅い(ASUS Z91EのBAREBONE NOTE)

dma転送がonになってないのではないでしょうか(私のマシーンではそうだったということなのですが、、、はずしていたらごめんなさい)

rootで

/sbin/hdparm /dev/hda (ただしデバイス名は環境によって異なる)

を実行してハードディスクの設定を調べたとき、using_dmaがonになっていなければdma転送がoffになっています。ディスクアクセスが極端に遅くなり、アクセスがあるとマシーンが固まったようになってしまいます。

ドライバーが対応していれば

/sbin/hdparm -d1 /dev/hda

とすればdma転送をonにできますが、デフォルトのカーネルに含まれるドライバーではこのチップセットには対応していなくてdmaがonにできないようでした。

私の場合は http://marc.theaimsgroup.com/?l=linux-ide&m=114317385718285&w=2 [^] で見つけたパッチをあててカーネルを作りなおしたところ、再起動しただけでdmaを自動的に認識して、実用的に使えるようになりました。

以上については

http://cachu.xrea.jp/blog/archives/2005/08/010235.html [^] (vine 3.xでpiix.cにパッチをあてる話)

を参考にしました。

http://hanzubon.jp/node/category/linux/ [^]

も参考になるかもしれません(piixは捨てられちゃってますけど、、、)。
(0002160)
anonymous   
2006-12-09 22:10   
先日[2]の書き込みをした者です。[2]の方法には問題があることが分りました。また、前のやりかたよりはるかに楽なdma転送の有効化方法が見つかったので追記します。

なお、私の環境はvine 3.2からvine 4.0にアップグレードしたものです。過去の環境をひきずっているので下記の作業が必要になりましたが、クリーンインストールの場合はもとから下記のような設定になっているのかもしれません。

[2]のようにしたところ、私の環境(sharp mw70j, 915gm, ich6m)では、dvdドライブが認識されなくなることがことが分りました(デフォルトカーネルでは普通に見えます)。
これじゃまずいということで少し調べたのですが、私の環境では、デフォルトカーネルに含まれるlibataを使うことでハードディスクとdvdの両方に高速にアクセスできることが分りました(要するにHanzubonさんと同じやりかたです)。

まず/boot/grub/grub.conf に次のようなエントリーを増やしました。

title AS YOU LIKE
        root (hd0,2)
        kernel /boot/vmlinuz-2.6.16-0vl60 ro root=/dev/sda3 resume2=swap:/dev/sda2 vga=0x314 hdc=noprobe
        initrd /boot/initrd-2.6.16-0vl60.img

(hd0,2)やhdcやsdaX等は環境によって異なるので、適当に読みかえてください。

libataでアクセスする場合、今までhdX等と認識されていたハードディスクがsdaと認識されるので、それにあわせてデバイス名を変える必要があります。
hdc=noprobeがないと、libataより先にgenericなideドライバーがハードディスクをhdcと認識しまい、うまくいきませんでした。

このオプションで再起動させると、ハードディスクもdvdも概ね良好に使えましたが、ハードディスクのswap領域が使えませんでした。これは/etc/fstab の中に/dev/hdX...等の元の設定が残っていたためです。これをsdaに書き換え再起動したところ、swapも利用できるようになりました。

なお、hdX -> sda 等の書き換えをするときは注意しましょう。場合によっては再起動不能になることもあるかもしれません。grub.confをいきなり書き換えるよりは、grub起動時にcを押して、手作業でオプションを指定してbootして様子をみたほうがいいかもしれません。

# で、いままでカーネル作りなおしてた私の苦労は何だったんだと、、、
# dmaの問題じゃなきゃこんな事書いてもあまり意味がないわけだが、[1]さんからの報告はないですな。
(0002161)
kazutaka   
2006-12-30 22:10   
元投稿者の方からリプライがいただけないようなので、
状態を再現せずとします。

ハラダ