web-dev-qa-db-ja.com

modinfoの出力をどのように理解しますか?

カーネルモジュールを説明するmodinfo出力を理解しようとしています。たとえば、モジュールi915、出力は次のようになります。

$ modinfo i915
filename:       /lib/modules/4.2.0-1-AMD64/kernel/drivers/gpu/drm/i915/i915.ko
license:        GPL and additional rights
description:    Intel Graphics
author:         Intel Corporation
[...]
firmware:       i915/skl_dmc_ver1.bin
alias:          pci:v00008086d00005A84sv*sd*bc03sc*i*
[...]
depends:        drm_kms_helper,drm,video,button,i2c-algo-bit
intree:         Y
vermagic:       4.2.0-1-AMD64 SMP mod_unload modversions
parm:           modeset:Use kernel modesetting [KMS] (0=DRM_I915_KMS from .config, 1=on, -1=force vga console preference [default]) (int)
[...]

一部の分野は理解できましたが、以下の意味がわかりません。

  • firmware
  • alias
  • intree
  • vermagic

誰かがそれらを解釈する方法を知っていますか?

11

ファームウェア

firmware:       i915/skl_dmc_ver1.bin

多くのデバイスが適切に動作するには2つのものが必要です。ドライバーとファームウェア。ドライバは、/lib/firmwareのファイルシステムにファームウェアを要求します。これは、ハードウェアに必要な特別なファイルであり、バイナリではありません。次に、ダイバーはファームウェアをデバイスにロードするために必要なことを行います。ファームウェアはデバイス内のハードウェアをプログラミングします。


エイリアス

alias:          pci:v00008086d00005A84sv*sd*bc03sc*i*

これは、文字の後の部分で分割できます。

  • v00008086vベンダーIDを表し、ハードウェアの製造元を識別します。そのリストは PCI Special Interest Group によって管理されています。あなたの番号 x8086 は「Intel Corporation」を表します。
  • d00005A84dは、メーカーが選択したデバイスIDを表します。このIDは通常、ベンダーIDと組み合わせて、ハードウェアデバイスの一意の32ビット識別子を作成します。正式なリストはなく、その番号を検索するIntelデバイスIDリストを見つけることができませんでした。
  • sv*sd*サブシステムベンダーバージョンおよびサブシステムデバイスバージョンは、デバイス(*は、すべてに一致することを示します)
  • bc03基本クラス。それはそれがどんな種類のデバイスであるかを定義します。 IDE interfaceEthernet controllerUSB Controller、... bc03Display controllerを表します。 lspciは数値をデバイスクラスにマップするため、lspciの出力からそれらに気付く場合があります。
  • sc*:基本クラスへのサブクラス
  • i*:インターフェース

intree

intree:         Y

すべてのカーネルモジュールは、out-of-treeとして開発を開始します。モジュールが含まれることが受け入れられると、そのモジュールはin-treeモジュールになります。そのフラグのないモジュール(Nに設定)は カーネルを保持する になります。


vermagic

vermagic:       4.2.0-1-AMD64 SMP mod_unload modversions

モジュールをロードするとき、vermagic値の文字列が一致するかどうかがチェックされます。それらが一致しない場合、エラーが発生し、カーネルはモジュールのロードを拒否します。 modprobe--forceフラグを使用することで、これを克服できます。もちろん、これらのチェックは保護のために存在するため、このオプションの使用は危険です。

13
chaos