web-dev-qa-db-ja.com

LinuxカーネルがPentium 4の「Switching to clocksource tsc」でハングする

ハードウェア:Dell Dimension 4500S:i845G、Pentium 4、在庫+ 2GB RAMおよび最新(2002年頃)BIOSアップデート。

私はソースからLinuxシステムを構築してきました。これまでのところ、本では LFS 7. です。最初に構築したカーネルは問題なく動作しますが、綿毛と膨らみがたくさんあるので、ターゲットハードウェアのカーネルを最適化しています(上記を参照)。

私の最新の構成の試み、およびいくつかの試行錯誤のバリエーションは、printkの「Switching to clocksource tsc」ステートメントで絶えずぶら下がっています。私の「良い」カーネルには問題がありませんでした...これはバージョン3.1.0です。どちらも同じソースツリーから構築されており、パッチ、make mrpropermake menuconfigなどは含まれていないため、CONFIG_XXXフラグが欠けていることは明らかです。

私はこの問題を1日以上見つめており、何回知っているか分からないカーネルを構築しました。

私が興味深いと思うことの1つは、入手したカーネルが優れていることです。

# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

また、知っておくと便利かもしれません...

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc acpi_pm

さまざまなオプションを使用してビルド構成を試行しましたが、現時点では詳細を思い出せないため、質問しないでください。私の検索から、clocksource=pitnotscなどのいくつかのカーネルパラメータを見つけてテストしましたが、これらもすべて失敗します。繰り返しになりますが、これまでに試したすべてのこと、後知恵を書いておけばよかったのですが...

フォーラムの例のほとんどは2.xカーネル用であり、いくつかのバリエーションのブートオプションで解決されましたが、私の良いカーネルはroot=/dev/sdaX roのみを使用しています。ですから、適切なビルド構成を見つけることができれば、このハードウェアとカーネル3.1.0の組み合わせに自信があることがわかります。

また、同様の問題を投稿したほとんどの人々は、数分後にシステムがロードを継続し、すべてが桃色になると言います。私は夕食を調理するのに十分なほどアイドル状態にしましたが、まだロードを再開していません。

私はあなたのグルの1人がこれを読んで「P4恐竜にCONFIG_XXX = yを設定しただけで、それがうまくいった」と言ってくれることを期待しています。 :)

何を試して確認する必要があるか教えてください。結果を掲載させていただきます。

11
rfmodulator

クイック検索から、この問題にはかなり多くの考えられる理由があり、クロックソースの新しいカーネルのデフォルトがマザーボードに対して間違っているという事実を指摘しているようです。

some で機能するアドバイスの1つは、clocksource=hpetまたはclocksource=acpi_pmを使用することでした。

別のスレッド では、誰かがclocksource=jiffiesでこれを修正し、別の人はnoapicまたはnolapicを試してみて、別の人はBIOSでACPIをオフにするようにアドバイスし、さらに別の人がSynapticsタッチパッドを非難し、問題を修正しましたXorg.confを削除します。

1つ カーネルビルダー fbcondecorなしでinitrdを再コンパイルすることにより、彼の問題を修正しました。

この問題には多くの原因があると思われるので、これが役に立てば幸いです。

8
harrymc

私から数セント、それが一般的なことかどうかはわかりませんが、BIOSで「高精度タイマー」を無効にすることでUbuntuを機能させることができました。私のmbはギガバイトのz77x-d3hです

0
Oxy

ここでまったく同じ問題が発生し、LOTを読みました。 @harrymcはかなり良い要約をしました。

私の研究から学んだ2つのことを追加します。

  • 問題は、処理クロックが何であるかを理解できないため、プロセッサの処理方法を知らないLinuxカーネルにあります。これは、カーネルブートログをチェックアウトすることで確認できます。カーネルが処理クロックを測定しようとしているようです(私にとっては "2997.1333"のようでしたが、すべてのブートが "2997.1445"、 "2997.1379"に変更されています...)。

  • 多くのことを試した後、私はついにここに来てBIOSについて調べました。鉱山はGYGABITE UEFIです。パラメータを「最適化されたデフォルト設定」に戻し、「Intel Virtualization Technology」を「有効」に設定しました。

これで、すべてが正常に戻りました。これが役立つことを願っています。

0
MaximeBernard