web-dev-qa-db-ja.com

カーネルモジュールを適切にリロードするにはどうすればよいですか?

関連質問

新しいフラグを試すためのカーネルモジュールをリロードできません。
例:thinkpad_acpiデフォルトはfan_control=1なしです。コンピューターが非常に熱くなり、ファンがフルスピードにならない場合は、モジュールにfan_controlを一時的にロードして数分間ファンを可能な限り最高の速度に設定し、すべてを変更することもできます。あとがきに戻る。
一部のカーネルモジュールが他のモジュールに依存しているようで、最近のLinuxカーネルがそれをチェックしているようです。
それで私はこれまで何をしましたか:

  • 依存関係の確認
    • modinfo -F depends thinkpad_acpi
  • これらのモジュールをアンロードしてみてください
    • rmmodまたはmodprobe -r $dependencies
    • 一部のモジュールは再び他のモジュールに依存しています。それらもアンロードしてみてください。 「依存関係」がない場合でも機能しません(または少なくともmodinfoが教えてくれます)
  • Googleにはmodprobe: FATAL: Module x is in use.がたくさんあります
  • 読み取り tldp
12
queryAllThings

カーネルで強制アンロードが有効になっている場合(zgrep FORCE_UNLOAD /proc/config.gzは言います=y)、 あなたはできる rmmod -f問題のあるカーネルモジュール。強制的にアンロードします。

これを可能にするパッチ によると、これはカーネル開発者と絶望的な人々のためだけのものです。

最善の方法は、モジュールが使用されている理由とそのプロセスを把握することですが、少なくとも強制アンロードにより、モジュールを再度リロードできるようになります。

4
Alexander