modinfoの出力を理解する方法は?


11

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

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

回答:


13

ファームウェア

firmware:       i915/skl_dmc_ver1.bin

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


エイリアス

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

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

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

インツリー

intree:         Y

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


vermagic

vermagic:       4.2.0-1-amd64 SMP mod_unload modversions

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.