Go to main content
Oracle® Solaris 11.3 でのデバイスの管理

印刷ビューの終了

更新: 2016 年 11 月
 
 

hotplug コマンドによる PCIe ホットプラグ

PCI Express (PCIe) および PCI SHPC デバイスで hotplug コマンドを使用すると、ホットプラグ処理可能な接続のみを管理できます。接続はコネクタまたはポートです。ホットプラグコネクタとは、コンポーネントの挿入や取り外しが行われるシステムの物理的機構のことです。ホットプラグポートとは、システムへのデバイスの接続が管理される、システムデバイスツリー内の論理表現です。

ホットプラグ機能を使用することで、オンボードデバイスを含むデバイスをシステムに物理的に追加したり取り外したりせずに、オンラインやオフラインにできます。

hotplug コマンドを使ってデバイスを管理するには、ホットプラグサービスを有効にする必要があります。このサービスは、sun4v プラットフォームを除くほとんどのプラットフォームで、デフォルトで無効になっています。ホットプラグサービスを有効にするには、次のコマンドを入力します。

# svcadm enable svc:/system/hotplug:default

次の例は、hotplug コマンドの別の使用方法を示しています。

  • システムのすべての PCI/PCIe ホットプラグ可能コネクタまたはポートを表示します。これらのポートは仮想ポートまたは物理ポートです。

    # hotplug list -lv
  • PCI/PCIe デバイスを構成または構成解除します。

      次のいずれかのコマンドを使用します。

    • hotplug enable path connector

    • hotplug disable path connector

    次の例は、PCIe スロットに Ethernet カードを構成しています。

    # hotplug enable /pci0,0 pcie0
  • PCI デバイスノードのデバイスドライバを接続または切断します。

      次のいずれかのコマンドを使用します。

    • hotplug online path port

    • hotplug offline path port

    次の例は、PCI デバイスノードのデバイスドライバを接続解除して、オフラインにしています。

    # hotplug offline /pci0,0/pci1 pci.0,2
  • 特定のポートのデバイスのドライバによってサポート可能なサービスのインストールまたはアンインストール

      次のいずれかのコマンドを使用します。

    • hotplug install path port

    • hotplug uninstall path port

    次の例は、IOV 物理機能の依存ポートをインストールしています。

    # hotplug install /pci@400/pci@1/pci@0/pci@4 pci.0,1
  • すべてのコネクタ、ポート、およびそれらに関連付けられているデバイスの情報の詳細モードでの表示

    # hotplug list -v path connection

    次の例は、前の例に示したインストール操作後に検査された IOV 仮想機能を表示しています。

    # hotplug list -v /pci@400/pci@1/pci@0/pci@4 pci.0,1
    <pci.0,1>  (ONLINE)
    { IOV physical function }
    { IOV virtual function 'pci.0,81' }
    { IOV virtual function 'pci.0,83' }
    { IOV virtual function 'pci.0,85' }
    { IOV virtual function 'pci.0,87' }
    <pci.0,81>  (OFFLINE)
    ethernet@0,81
    <pci.0,83>  (OFFLINE)
    ethernet@0,83
    <pci.0,85>  (OFFLINE)
    ethernet@0,85
    <pci.0,87>  (OFFLINE)
    ethernet@0,87

PCI のホットプラグ操作のトラブルシューティング

PCI のホットプラグ操作を実行しているときに、次のエラーメッセージが表示される場合があります。

  • ホットプラグ対応ポートに接続されたデバイスの保守状態に関するエラー

    /pci@0,0/pci10de,5d@e <pci.a,1> (MAINTENANCE)
    .
    .
    ./pci@0,0/pci108e,534a@d <pci.0,0> (MAINTENANCE-SUSPENDED)

    これらのメッセージは、障害イベントまたは保守操作が発生したことを示しています。MAINTENANCE 状態は、使用されているデバイスが、完全には動作していないことを意味します。MAINTENANCE-SUSPENDED 状態は、保守操作 (デバイスのハードウェアの再構成など) のためにデバイスがライブサスペンドしていることを意味します。

  • サービスを利用できないことに関するエラー

    ERROR: hotplug service is not available.

    このメッセージは、ホットプラグサービスが無効にされていて、ホットプラグ操作を実行できないことを意味しています。hotplug コマンドを使用するには、svc:/system/hotplug:default が実行されている必要があります。

  • 接続の表示の問題に関するエラー

    ERROR: there are no connections to display.
    (See hotplug(1m) for more information.)

    このメッセージは、サポートされる入出力バスがシステムにないことを意味しています。これは、ホットプラグ対応のほかの入出力デバイスがシステムに存在するが、それらのデバイスの管理には hotplug コマンドではなく cfgadm コマンドを使用する必要があることを意味する場合があります。

  • ビジー状態のリソースに関するエラー

    # hotplug uninstall /pci@400/pci@1/pci@0/pci@4 pci.0,0
    ERROR: devices or resources are busy.
    ethernet@0,81:
    ...

    このメッセージは、依存している IOV 仮想機能がビジー状態であるときに、IOV 仮想機能の依存ポートをアンインストールしていることを意味しています。