特定のワイヤレスネットワークに接続すると、カーネルがパニックになり続けます。バグレポートを送信したいのですが、カーネルが汚染されているようです。 /var/log/messages
から :
Apr 17 21:28:22 Eiger kernel: [13330.442453] Pid: 4095, comm: kworker/u:1 Tainted: G O 3.8.4-102.fc17.x86_64 #1
および
[[email protected] ~]# cat /proc/sys/kernel/tainted
4096
4096ビットマスクの意味に関するドキュメントを見つけることができませんでしたが、 。どのモジュールがカーネルを汚染しているのかを知るにはどうすればよいですか?G
フラグは、外部GPLモジュールがカーネルにロードされることを意味します
[Tt]aint
を探しました /var/log/messages
にあります またはdmesg
モジュールがロードされたときに対応するものは何も見つかりません。私のカーネルはFedora17の最新カーネルです:3.8.4-102.fc17.x86_64。
更新 :rts5139
が原因である可能性があります モジュール。 lsmod
に表示されます ただし、modinfo rts5139
ERROR: Module rts5139 not found.
以前のカーネル3.8.3-103.fc17.x86_64を起動すると、このモジュールはlsmod
によってリストされません。 カーネルが汚染されていない(/proc/sys/kernel/taint
は0です。
このモジュールをブラックリストに載せてみました
echo 'blacklist rts5139' >> /etc/modprobe.d/blacklist.conf
ただし、再起動してもカーネルが汚染されていると表示されます。
承認された回答:
標準のFedoraカーネルパッケージにこの汚染を引き起こすモジュールが含まれているとは思わないので、問題は、他にどのカーネルモジュールをインストールしたかということです。
一般的な候補は、グラフィックスドライバー(ほとんどの場合「プロプライエタリ」ビットを設定すると思いますが)とワイヤレスドライバーです。
lsmod
に何かが見つかった場合 候補と思われる出力を実行してから、modinfo <module-name>
を実行します。 出力にintree: Y
が含まれているかどうかを確認します それがないモジュールは、あなたが見ている汚染を引き起こします。
更新 :rts5139
lsmod
に表示されているモジュール ただし、システムに存在しないように見えるものは、おそらくinitrdにあり、メインファイルシステムがマウントされる前のブートプロセスの早い段階でそこからロードされています。
これは、更新されたブラックリストを使用してinitrdを再構築する必要があるため、ブラックリストが機能しない理由も説明しています。 dracut
を使用してinitrdを再構築する とにかくモジュールが消えてしまいます。