[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[netbsd,08844] Re: NetBSD on PCGC1-MZX



河内です。

同じチップセットでも問題ない機種もあるんでしょうかね。
ALi のチップセットってあんまり詳しい資料がWebにないみたい
なので、ちょっとそれだけでは苦しいですね。

On Mon, 31 May 2004 20:55:33 +0900
Tatsuya Kobayashi <tatsuyak@xxxxxxxxxxxx> wrote:

> > この問題ですが、前からいくつか報告されていて、対処法もあるようなのですが
> > 自分の手元では再現しないので調査が後回しになっています。
> > shutdown -r でも shutdown -p (電源off) でも固まりますか? それとも、
> > リブートのみでしょうか?
> 
> これはリブートのみです。shutdown -p は正常に電源斷します。なにか
> 御協力出来ることがあればいってください。

ACPI に関する問題は、OS 依存はほとんどないので、他の OS でどうか、
ということをまず調べるのが解決への近道だと思います。

考えられる方法を書いてみます。

1. どの部分で固まっているのかを調べる
  reset だと、MD の cpu_reboot あたりを通りますが、そのパスのどこで
  止まってしまうのか、printf を山のように埋め込んで調べるか、DDB を使って
  ステップ実行して調べれば、もうすこし調査の範囲を狭くすることができます。
  このあたりの絞り込みをせずに、「なんとなく ACPI かなぁ」という状態では
  調査が先に進みません。

2. 既知問題を調べる
  a) Web で検索
     チップセットや型番、キーワードで ML アーカイブなどから (NetBSD に
     限らず、Linux or FreeBSD 等) 同様の問題が見つかることがあります。
  b) FreeBSD の PR, Linux の Bugzilla で同様の問題がないか調べる
     http://www.freebsd.org/cgi/query-pr-summary.cgi?query
     http://bugzilla.kernel.org/

     これで同じ、あるいは類似の問題があれば、それを NetBSD に適用して
     みるか、それが難しそうであれば私にその URL だけでも教えて頂けると
     なんとかなるかもしれません。

3. 他環境で試す
  Linux, FreeBSD (なるべく最新に近いもの)をインストールして、
  同様の問題があるかどうか調べる。

  解決しているようなら、ソース上の差分を調べる。
  あとは差分が5箇所なら、それを1箇所ずつ適用していって実機で試せば、
  どれが問題かわかります。あまり ACPI の知識は必要ありません。C 言語の
  プログラムの流れを追うスキルと根気さえあればなんとかなります。

  同様の問題があれば、その OS なりの方法でバグ報告して、誰かが直して
  くれればそれを NetBSD に取り込むという方法もあります :)

  とにかく、実機がない限りこの方法は私にはできないので、これをやって
  いただけると非常にありがたいです。

  逆に、実機がないとソースコードを目視確認で差分調査して、一カ所ずつ
  実機を持っている人とのメールのやりとりをしながら可能性をつぶす、という
  労力だけの作業なので、やりたくありません :(

4. 仕様を確認する
  ここまで読んで、「仕様書通りにコードが書かれていないからうまく
  動かないだけなのでは?」という疑問を持たれるかもしれませんが、
  リセットするときに何がどういう状態になっているべきか、などという
  細かいことはいちいち書いていないので、そのあたりは試行錯誤がどうしても
  入ってきます。ACPI的に仕様書上正しかろうと間違っていようと、
  Windows でうまく動けばベンダは市場に出荷してしまうので、あまり
  仕様書には強制力がないと思ってとりかかったほうがよいでしょう。
  しかし、仕様書は一応 (無料で入手できる) 唯一の拠り所ではあるので
  確認する価値はある場合もあります。

  また、Microsoft が BIOS やプラットフォームベンダ、ドライバ
  作者向けに公開している情報は、Windows の実装を間接的に知るヒントに
  なったり、ACPI 仕様書では不十分なところを補う内容があるので、
  この中にヒントがある場合もあります。
  http://www.microsoft.com/whdc/system/pnppwr/powermgmt/default.mspx

  実際には、なにかアドホックな解決策が見つかったときにそれがどれぐらい
  筋がよいかどうか確認するぐらいしか仕様書は役に立たないことが多いです。

とまぁ、こんなところでしょうか。

3. あたりの方法が (ディスクスペース的に余裕があれば) 一番簡単に
取りかかれると思います。

私なら、実機が手元にある場合は 1 -> 3 の順で調べます。

---
Takayoshi Kochi