JP7142503B2 - 管理装置、情報処理装置、及びプログラム - Google Patents

管理装置、情報処理装置、及びプログラム Download PDF

Info

Publication number
JP7142503B2
JP7142503B2 JP2018129172A JP2018129172A JP7142503B2 JP 7142503 B2 JP7142503 B2 JP 7142503B2 JP 2018129172 A JP2018129172 A JP 2018129172A JP 2018129172 A JP2018129172 A JP 2018129172A JP 7142503 B2 JP7142503 B2 JP 7142503B2
Authority
JP
Japan
Prior art keywords
error
input
path configuration
configuration
switches
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018129172A
Other languages
English (en)
Other versions
JP2020009113A (ja
Inventor
正敏 杉野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018129172A priority Critical patent/JP7142503B2/ja
Priority to US16/453,292 priority patent/US11169882B2/en
Publication of JP2020009113A publication Critical patent/JP2020009113A/ja
Application granted granted Critical
Publication of JP7142503B2 publication Critical patent/JP7142503B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/1423Reconfiguring to eliminate the error by reconfiguration of paths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0784Routing of error reports, e.g. with a specific transmission path or data flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2284Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Description

本発明は、管理装置、情報処理装置、及びプログラムに関する。
情報処理装置(コンピュータ)の運用中に入出力(Input/Output,IO)装置において回復不能なエラーが発生した場合、エラー情報がIO装置に記録される。そして、そのエラー情報がIO装置からCPU(Central Processing Unit)まで伝搬していくことで、エラー発生が認識される。
エラー発生が認識された後、伝搬経路を含めてすべてのエラー情報をチェックすることでエラー発生箇所が絞り込まれ、特定された故障部品が正常部品に交換される。以下では、IO装置を指して、IOデバイスと記載することがある。
情報処理装置の運用前には、通常、BIOS(Basic Input/Output System)によってPOST(Power-On Self-Test)が実施される。POSTは、情報処理装置を動作可能な状態にするために行われる各種初期化処理であり、IOバス上を探索して、搭載されているIOデバイスの検出及び初期化を行う処理を含む。
図1は、IOデバイスがCPUのIOインタフェースに直接接続されている、小規模な情報処理装置の構成例を示している。図1の情報処理装置101は、CPU111、IOデバイス112-1~IOデバイス112-3、及びメモリ114を含む。IOデバイス112-1~IOデバイス112-3は、IOインタフェース113-1~IOインタフェース113-3にそれぞれ接続されている。情報処理装置101は、以下のように動作する。
ステップ1:CPU111は、電源投入時にBIOSを起動し、POSTを実施する。
ステップ2:POSTの実施中に、BIOSは、搭載されているデバイスを探索し、IOデバイス112-1~IOデバイス112-3を検出する。
ステップ3:BIOSは、検出したIOデバイス112-1~IOデバイス112-3それぞれのドライバを読み込み、初期化処理を行う。
エラー対策に関連して、冗長IOインタフェースを有するコンピュータシステム、二重化システムバスアダプタを有するコンピュータシステム、及び冗長化された情報転送経路を有する情報処理システムが知られている(例えば、特許文献1~特許文献3を参照)。
特開2006-302287号公報 特開平9-34809号公報 特開2000-148655号公報
大規模な情報処理装置では、CPUから各IOデバイスまでの経路上に複数の部品が存在することがある。このため、CPUからIOデバイスへのアクセスにおいてエラーが発生した場合、IOデバイス又は経路上の他の部品のいずれが故障部品であるのかを切り分けることが困難である。
なお、かかる問題は、CPUからIOデバイスまでの経路上に複数の部品が存在する情報処理装置に限らず、他のプロセッサからIOデバイスまでの経路上に複数の部品が存在する情報処理装置においても生ずるものである。
1つの側面において、本発明は、情報処理装置において入出力装置のエラーが検出された場合に、プロセッサから入出力装置までの経路に含まれる被疑部品を絞り込むことを目的とする。
1つの案では、管理装置は、記憶部、制御部、及び特定部を含む。記憶部は、プロセッサから複数の入出力装置までの第1経路構成とプロセッサから複数の入出力装置までの第2経路構成とを示す経路構成情報を記憶する。
制御部は、プロセッサから複数の入出力装置までの経路構成が第1経路構成である状態において、いずれかの入出力装置のエラーが検出された場合、第1経路構成を第2経路構成に切り替える。
特定部は、切り替え後の第2経路構成の状態において、いずれかの入出力装置のエラーが検出された場合、プロセッサから複数の入出力装置までの経路構成に含まれる被疑部品を特定する。この場合、特定部は、第1経路構成の状態においてエラーが検出された入出力装置と第2経路構成の状態においてエラーが検出された入出力装置とを比較した比較結果に基づいて、被疑部品を特定する。
1つの実施形態によれば、情報処理装置において入出力装置のエラーが検出された場合に、プロセッサから入出力装置までの経路に含まれる被疑部品を絞り込むことができる。
小規模な情報処理装置の構成図である。 大規模な情報処理装置の構成図である。 エラーが再発する動作シーケンスを示す図である。 管理装置の機能的構成図である。 被疑部品特定処理のフローチャートである。 情報処理システムの構成図である。 管理装置が記憶する情報を示す図である。 通常構成を示す図である。 交代構成を示す図である。 縮退構成を示す図である。 エラー制御処理のフローチャートである。 デバイスエラー処理のフローチャートである。 デバイス切り離し処理のフローチャートである。 経路エラー処理のフローチャートである。 スイッチ検索処理のフローチャートである。 構成変更処理のフローチャートである。 POSTのフローチャートである。 CPU初期化処理のフローチャートである。 IO初期化処理のフローチャートである。 通信処理のフローチャートである。 診断処理のフローチャートである。 エラー検出処理のフローチャートである。 ブート制御処理のフローチャートである。 経路構成が変更される第1の動作シーケンスを示す図である。 経路構成が変更される第2の動作シーケンスを示す図である。 情報処理装置のハードウェア構成図である。
以下、図面を参照しながら、実施形態を詳細に説明する。
図2は、IOデバイスがバススイッチ(Bus Switch,BUS-SW)を経由してCPUのIOインタフェースに接続されている、大規模な情報処理装置の構成例を示している。図2の情報処理装置201は、CPU211、メモリ212、BUS-SW213-1~BUS-SW213-4、BUS-SW214-1~BUS-SW214-4、及びIOデバイス215-1~IOデバイス215-12を含む。メモリ212は、CPU211が実行するプログラムと、情報処理装置201の構成情報を含むデータとを記憶する。
BUS-SW213-1~BUS-SW213-4は上位のバススイッチであり、CPU211に接続されている。BUS-SW214-1~BUS-SW214-4は下位のバススイッチであり、BUS-SW214-i(i=1~4)はBUS-SW213-iに接続されている。
IOデバイス215-1~IOデバイス215-3は、BUS-SW214-1に接続されており、IOデバイス215-4~IOデバイス215-6は、BUS-SW214-2に接続されている。IOデバイス215-7~IOデバイス215-9は、BUS-SW214-3に接続されており、IOデバイス215-10~IOデバイス215-12は、BUS-SW214-4に接続されている。
この場合、CPU211から各IOデバイス215-j(j=1~12)までの経路上には、BUS-SW213-i及びBUS-SW214-iが存在する。
管理装置202は、情報処理装置201を管理する情報処理装置であり、CPU211、BUS-SW213-1~BUS-SW213-4、及びBUS-SW214-1~BUS-SW214-4と通信することができる。管理装置202は、MMB(Management Blade)と呼ばれることもある。情報処理装置201は、以下のように動作する。
ステップ1:CPU211は、電源投入時にBIOSを起動し、POSTを実施する。
ステップ2:POSTの実施中に、BIOSは、情報処理装置201の構成情報に基づいて、各経路上のBUS-SW213-i及びBUS-SW214-iを初期化する。
ステップ3:POSTの実施中に、BIOSは、搭載されているデバイスを探索し、IOデバイス215-1~IOデバイス215-12を検出する。
ステップ4:BIOSは、検出したIOデバイスのドライバのうち、オペレーティングシステム(Operating System,OS)を起動するためのリソースとして使用されるIOデバイスのドライバのみを読み込み、初期化処理を行う。
大規模な情報処理装置においては、ステップ4のように、POSTの実施中にOSブートに関連するIOデバイスのドライバのみが読み込まれ、残りのIOデバイスのドライバはOS起動時に読み込まれることが多い。これにより、初期化時に割り当てられるLegacy-IO空間の枯渇を防ぐことができるとともに、初期化処理の所要時間を短縮することができる。
ステップ2において、いずれかのBUS-SWでエラー発生を検出した場合、そのエラー情報が管理装置202に伝達され、管理装置202からユーザに通知されるとともに、情報処理装置201は初期化に失敗して停止する。また、ステップ4においては、検出されたすべてのIOデバイスのドライバが読み込まれるわけではなく、IOデバイスの初期化はOS上のドライバに任せられるため、POSTの実施中のドライバ読み込み動作及び初期化処理はスキップされることがある。
しかしながら、経路上のBUS-SWが故障している場合、情報処理装置の運用中にそのBUS-SWが直接アクセスされることはないため、IOデバイス又はBUS-SWのいずれが故障部品であるのかが明確に切り分けられない可能性がある。
例えば、IOバスとしてPCI(Peripheral Component Interconnect)-expressが使用されている場合、PCI-expressインタフェース仕様書の定義によれば、報告されるエラーの種別によって、エラーの原因である故障箇所が判明する。エラーの種別がIOデバイス自体を示している場合、そのIOデバイスが故障部品であると判断することができる。しかし、エラーの種別が経路上のエラーを示している場合、エラーが検出されたときのアクセス先IOデバイスと、エラーの原因である故障部品とが一致していない可能性がある。
具体的には、運用中に回復不能なエラーが認識された場合、OSは、PANIC、BSOD(Blue Screen of Death)のような強制停止等の状態を引き起こし、システムダウンに陥る。そして、最終的に、BIOSがOSを再起動することで回復を試みる。
IOデバイス自体のエラーを要因としてシステムダウンした場合には、そのIOデバイス自体のエラーが認識されるため、故障部品の切り離し処理を行うことができる。しかし、エラーを検出できるのはエラー情報を受信する部品のみであるため、経路上のエラーを要因としてシステムダウンした場合、エラー情報の送信端又は受信端のいずれに問題があるかを切り分けることは困難である。したがって、エラーが検出されたときのアクセス先IOデバイスのみが報告されることになる。
また、一般的なBUS-SWは、仕様上、受信したエラー情報をインタフェースの最上位側へ転送するのみであり、BUS-SW自体がエラー処理を行うことはない。つまり、経路上の部品が故障しているにもかかわらず、インタフェースの最上位の部品に対して、IOデバイスのエラーとして報告されることが起こり得る。この場合、報告されたIOデバイスを切り離しても、経路上の故障部品が残っているため、システムダウンが再発する可能性がある。安全のために経路を含めて切り離すと、情報処理装置の全体構成に大きな影響を与えるため、同一の設定での再起動が難しくなる可能性がある。
図3は、図2の情報処理装置201においてエラーが再発する動作シーケンスの例を示している。まず、時刻A1において、OS301は、IOデバイス215-1に対するアクセスエラーであるIOエラーを検出し、管理装置202に対して1回目のIOエラーを報告する。この場合、故障部品の候補である被疑部品は、CPU211からIOデバイス215-1までの経路に含まれるBUS-SW213-1、BUS-SW214-1、及びIOデバイス215-1であり、被疑部品は一意に特定されない。
そこで、管理装置202は、エラー処理を行って、IOデバイス215-1のエラー情報を保存し、時刻A2において、OS301に対して再起動要求を送信することで、OS301をリセットする。OS301は、再起動要求に応答して情報処理装置201を再起動する。再起動の過程でBIOS302に制御が移り、BIOS302は、CPUを初期化し、IOデバイスを初期化し、OSブートを行ってOS301を起動する。
次に、時刻A3において、OS301は、IOデバイス215-1に対する2回目のIOエラーを検出し、管理装置202に対してIOエラーを報告する。この場合も被疑部品は一意に特定されないため、管理装置202は、1回目のエラー情報と同じエラー情報を保存し、時刻A4において、OS301をリセットする。OS301は、情報処理装置201を再起動し、BIOS302は、CPUを初期化し、IOデバイスを初期化し、OSブートを行ってOS301を起動する。その後、OS301は、3回目のIOエラーを検出する。
このように、経路上のエラーを要因としてシステムダウンした場合、管理装置202が故障部品を特定して切り離すことがないため、OS301上でIOエラーが再度検出され、障害が繰り返し発生するように見えてしまう。
さらに、情報処理装置201の再起動中には、エラーが検出されたIOデバイスを含めて初期化が行われるが、システムダウンの要因が間歇故障に起因する場合、初期化処理においてエラーが検出されないことがある。また、OS301上のドライバによる診断処理が簡略化されている場合にも、初期化処理においてエラーが検出されないことがある。
エラー情報が保存されている場合、被疑部品を後で交換することは可能である。しかし、経路上の故障部品に対するエラー情報が存在しない場合、又は複数のエラー情報が記録されている場合等において、エラー情報の伝搬順序が記録されていないため、被疑部品を絞り込むことは極めて困難である。
図4は、実施形態の管理装置の機能的構成例を示している。図4の管理装置401は、記憶部411、制御部412、及び特定部413を含む。記憶部411は、プロセッサから複数の入出力装置までの第1経路構成とプロセッサから複数の入出力装置までの第2経路構成とを示す経路構成情報421を記憶する。制御部412及び特定部413は、経路構成情報421を用いて被疑部品を特定する被疑部品特定処理を行う。
図5は、図4の管理装置401が行う被疑部品特定処理の例を示すフローチャートである。まず、制御部412は、プロセッサから複数の入出力装置までの経路構成が第1経路構成である状態において、いずれかの入出力装置のエラーが検出された場合、第1経路構成を第2経路構成に切り替える(ステップ501)。
特定部413は、切り替え後の第2経路構成の状態において、いずれかの入出力装置のエラーが検出された場合、プロセッサから複数の入出力装置までの経路構成に含まれる被疑部品を特定する(ステップ502)。この場合、特定部413は、第1経路構成の状態においてエラーが検出された入出力装置と第2経路構成の状態においてエラーが検出された入出力装置とを比較した比較結果に基づいて、被疑部品を特定する。
図4の管理装置401によれば、情報処理装置において入出力装置のエラーが検出された場合に、プロセッサから入出力装置までの経路に含まれる被疑部品を絞り込むことができる。例えば、プロセッサとしては、CPU、マイクロプロセッサ、デジタルシグナルプロセッサ等を用いることができる。
図6は、図4の管理装置401を含む情報処理システムの構成例を示している。図6の情報処理システムは、情報処理装置601及び管理装置602を含む。情報処理装置601は、CPU611、メモリ612、上位モジュール613-1、上位モジュール613-2、下位モジュール614-1、及び下位モジュール614-2を含む。
上位モジュール613-i及び下位モジュール614-i(i=1,2)は、FRU(Field-Replaceable Unit)のような保守交換単位である。上位モジュール613-i及び下位モジュール614-iの個数は2個に限られるわけではなく、3個以上であってもよい。
CPU611は、メモリ612を利用してBIOS621、OS622、及び不図示のアプリケーションプログラムを実行する。このとき、CPU611は、信号線を介して管理装置602へ命令を送信し、管理装置602から応答を受信することができる。CPU611は、情報処理装置601の起動時に、まず、BIOS621を実行することで、ハードウェアの初期化及び設定を行い、その後、OS622を実行する。
上位モジュール613-iは、上位のバススイッチであるBUS-SW623-iを含む。下位モジュール614-1は、下位のバススイッチであるBUS-SW624-1と、IOデバイス625-1~IOデバイス625-3を含む。下位モジュール614-2は、下位のバススイッチであるBUS-SW624-2と、IOデバイス625-4~IOデバイス625-6を含む。
各IOデバイス625-j(j=1~6)は、例えば、ネットワークインタフェース、ストレージインタフェース、外部インタフェース、ビデオカード、サウンドカード等であり、下位モジュール614-iのIOスロットに搭載されている。
CPU611とBUS-SW623-1は、信号線615-1によって接続されており、CPU611とBUS-SW623-2は、信号線615-2によって接続されている。
BUS-SW623-iとBUS-SW624-iとの間の経路は冗長構成になっており、各BUS-SW623-iは、BUS-SW624-1及びBUS-SW624-2の両方に接続されている。BUS-SW623-1とBUS-SW624-1は、信号線616-1によって接続されており、BUS-SW623-1とBUS-SW624-2は、信号線617-1によって接続されている。BUS-SW623-2とBUS-SW624-2は、信号線616-2によって接続されており、BUS-SW623-2とBUS-SW624-1は、信号線617-2によって接続されている。
IOデバイス625-1~IOデバイス625-3は、BUS-SW624-1に接続されており、IOデバイス625-4~IOデバイス625-6は、BUS-SW624-2に接続されている。
この場合、CPU611から各IOデバイス625-j(j=1~3)までの経路上には、BUS-SW623-1又はBUS-SW623-2と、BUS-SW624-1とが存在する。一方、CPU611から各IOデバイス625-j(j=4~6)までの経路上には、BUS-SW623-1又はBUS-SW623-2と、BUS-SW624-2とが存在する。
管理装置202は、図4の管理装置401に対応し、記憶部631、制御部632、特定部633、及び監視部634を含む。記憶部631は、状態情報641、経路構成情報642、交代要因情報643、及びIOデバイス情報644を記憶する。
経路構成情報642は、図4の経路構成情報421に対応し、CPU611からIOデバイス625-1~IOデバイス625-6までの複数の経路構成を示す情報である。各経路構成は、例えば、BUS-SW623-iとBUS-SW624-iとの間の接続形態によって表される。
状態情報641は、経路構成情報642が示す複数の経路構成のうち、現在の情報処理装置601の経路構成を示す情報であり、交代要因情報643は、エラーが検出されたときのアクセス先IOデバイスを示す情報である。IOデバイス情報644は、各BUS-SW624-iに接続されているIOデバイス625-jを示す情報である。
制御部632は、図4の制御部412に対応し、情報処理装置601の経路構成を管理する。制御部632は、状態情報641及び経路構成情報642に基づいて、BUS-SW623-i及びBUS-SW624-iが有するポートを活性化又は非活性化することにより、そのポートの接続を有効化又は無効化する。これにより、制御部632は、BUS-SW623-iとBUS-SW624-iとの間の接続形態を変更して、情報処理装置601の経路構成を別の経路構成に切り替えることができる。
特定部633は、図4の特定部413に対応し、IOデバイス625-jのエラー情報に基づいて、経路構成に含まれる被疑部品を特定し、特定した被疑部品の切り離し処理を行う。特定部633は、特定した被疑部品を示すSEL(System Event Log)を出力することで、ユーザに対してエラー発生を通知する。
監視部634は、BIOS621又はOS622からIOエラー等のエラー報告を受信し、エラーが検出されたことを特定部633に通知する。管理装置202は、情報処理装置601の電源制御及び情報処理装置601のリセット処理の制御も行う。
図7は、図6の管理装置602が記憶する情報の例を示している。図7(a)は、状態情報641の例を示している。Conditionのエントリ番号enは、図7(b)に示す経路構成情報642のいずれかのエントリを示すポインタである。
図7(b)は、経路構成情報642の例を示している。図7(b)の経路構成情報642の各エントリは、エントリ番号、Mode、対象スイッチ番号、BUS#リスト、及びポート活性状態リストを含む。
エントリ番号“1”~エントリ番号“N”(Nは7以上の整数)は、エントリの識別情報であり、Modeは、経路構成の種別を表す。Mode“1”は、通常構成を示し、Mode“2”は、交代構成を示し、Mode“3”は、縮退構成を示し、Mode“0xFF”は、経路構成情報642の末尾を示す。
図8は、図6の情報処理装置601における通常構成の例を示している。図8の通常構成では、信号線615-1、信号線615-2、信号線616-1、及び信号線616-2による接続が有効化され、信号線617-1及び信号線617-2による接続が無効化される。この経路構成は、エントリ番号“1”の通常構成に対応する。通常構成の状態において経路上のエラーが検出された場合、経路構成が交代構成に変更される。
図9は、図6の情報処理装置601における交代構成の例を示している。図9の交代構成では、信号線615-1、信号線615-2、信号線617-1、及び信号線617-2による接続が有効化され、信号線616-1及び信号線616-2による接続が無効化される。この経路構成は、エントリ番号“2”及びエントリ番号“3”の交代構成に対応する。交代構成の状態において経路上のエラーが検出され、BUS-SW623-iが被疑部品として特定された場合、経路構成が縮退構成に変更される。
図10は、図6の情報処理装置601における縮退構成の例を示している。縮退構成は、被疑部品として特定された部品を使用しない経路構成である。図10の縮退構成は、BUS-SW623-1が被疑部品である場合に適用される。この場合、信号線615-2、信号線616-2、及び信号線617-2による接続が有効化され、信号線615-1、信号線616-1、及び信号線617-1による接続が無効化される。これにより、BUS-SW623-1が切り離され、情報処理装置601の縮退運用が行われる。この経路構成は、エントリ番号“5”の縮退構成に対応する。
図7(b)の対象スイッチ番号は、各経路構成において故障している可能性があるBUS-SWを示すスイッチ番号である。通常構成の“0xFF”は、いずれのBUS-SWも故障している可能性がないことを示し、交代構成の“1”は、BUS-SW624-1を示し、交代構成の“2”は、BUS-SW624-2を示す。縮退構成の対象スイッチ番号は、被疑部品として特定されたBUS-SWのスイッチ番号であり、“1”はBUS-SW623-1を示し、“2”はBUS-SW623-2を示す。
BUS#リストは、各BUS-SW623-iの上位primaryとsecondary-subordinateの組み合わせを表す。上位primaryは、BUS-SW623-iのバス番号を表し、secondary-subordinateは、BUS-SW623-iの下位側に存在する部品のバス番号を表す。
例えば、図8の通常構成では、次のようにバス番号が割り当てられる。
BUS-SW623-1:11
BUS-SW624-1:12
IOデバイス625-1:13
IOデバイス625-2:14
IOデバイス625-3:15
BUS-SW623-2:17
BUS-SW624-2:18
IOデバイス625-4:19
IOデバイス625-5:20
IOデバイス625-6:21
したがって、BUS-SW623-1の上位primaryは“11”であり、secondary-subordinateは“12-15”である。一方、BUS-SW623-2の上位primaryは“17”であり、secondary-subordinateは“18-21”である。
図9の交代構成では、次のようにバス番号が割り当てられる。
BUS-SW623-1:17
BUS-SW624-1:12
IOデバイス625-1:13
IOデバイス625-2:14
IOデバイス625-3:15
BUS-SW623-2:11
BUS-SW624-2:18
IOデバイス625-4:19
IOデバイス625-5:20
IOデバイス625-6:21
したがって、BUS-SW623-1の上位primaryは“17”であり、secondary-subordinateは“18-21”である。一方、BUS-SW623-2の上位primaryは“11”であり、secondary-subordinateは“12-15”である。
図10の縮退構成では、次のようにバス番号が割り当てられる。
BUS-SW623-1:0xFF
BUS-SW624-1:12
IOデバイス625-1:13
IOデバイス625-2:14
IOデバイス625-3:15
BUS-SW623-2:11
BUS-SW624-2:18
IOデバイス625-4:19
IOデバイス625-5:20
IOデバイス625-6:21
したがって、BUS-SW623-1の上位primaryは“0xFF”であり、secondary-subordinateは“0xFF-0xFF”である。一方、BUS-SW623-2の上位primaryは“11”であり、secondary-subordinateは“12-21”である。
ポート活性状態リストは、各BUS-SW623-iのSW-ID、port-ID、及びon/offの組み合わせを表す。SW-IDは、BUS-SW623-iを示すスイッチ番号であり、port-IDは、BUS-SW623-iの下位側ポートの番号であり、on/offは、ポートが活性化されるか否かを示すフラグである。on/offが“1”の場合、そのポートが活性化され、on/offが“0”の場合、そのポートが非活性化される。
図6のBUS-SW623-1及びBUS-SW623-2のスイッチ番号は、それぞれ“1”及び“2”である。BUS-SW623-1において、信号線616-1及び信号線617-1がそれぞれ接続されているポートの番号は、“1”及び“2”である。一方、BUS-SW623-2において、信号線616-2及び信号線617-2がそれぞれ接続されているポートの番号は、“1”及び“2”である。
例えば、図8の通常構成に対応するエントリ番号“1”のエントリには、BUS-SW623-1のポート活性状態リストとして、(1,1,1)及び(1,2,0)が含まれている。さらに、このエントリには、BUS-SW623-2のポート活性状態リストとして、(2,1,1)及び(2,2,0)が含まれている。
図9の交代構成に対応するエントリ番号“2”及びエントリ番号“3”のエントリには、BUS-SW623-1のポート活性状態リストとして、(1,1,0)及び(1,2,1)が含まれている。さらに、このエントリには、BUS-SW623-2のポート活性状態リストとして、(2,1,0)及び(2,2,1)が含まれている。
図10の縮退構成に対応するエントリ番号“5”のエントリには、BUS-SW623-1のポート活性状態リストとして、(1,1,0)及び(1,2,0)が含まれている。さらに、このエントリには、BUS-SW623-2のポート活性状態リストとして、(2,1,1)及び(2,2,1)が含まれている。
制御部632は、管理装置602が起動されたときに、情報処理装置601の状態を確認し、実装されている上位モジュール613-i又は下位モジュール614-iの変更を認識した場合、経路構成情報642を更新する。
図7(c)は、交代要因情報643の例を示している。BUS#は、IOデバイス625-jのエラー情報に含まれるバス番号を表し、DEV#は、そのエラー情報に含まれるデバイス番号を表し、BUS#及びDEV#の組み合わせは、エラーが検出されたIOデバイス625-jのアドレス情報を表す。例えば、IOデバイス625-2のアドレス情報“14.0”を含むエラー情報を監視部634が受信した場合、特定部633は、交代要因情報643のBUS#及びDEV#として、“14”及び“0”をそれぞれ記録する。
図7(d)は、IOデバイス情報644の例を示している。図7(d)のデバイス情報644の各エントリは、スイッチ番号、primary、port1、port2、及びport3を含む。
スイッチ番号は、BUS-SW624-iを示すスイッチ番号であり、primaryは、BUS-SW624-iのバス番号を表し、port1~port3は、BUS-SW624-iに接続されている3個のIOデバイス625-jのアドレス情報を表す。
BUS-SW624-1のスイッチ番号は“1”であり、primaryは“12”である。また、BUS-SW624-1に接続されているIOデバイス625-1、IOデバイス625-2、及びIOデバイス625-3それぞれのアドレス情報は、“13.0”、“14.0”、及び“15.0”である。
一方、BUS-SW624-2のスイッチ番号は“2”であり、primaryは“18”である。また、BUS-SW624-2に接続されているIOデバイス625-4、IOデバイス625-5、及びIOデバイス625-6それぞれのアドレス情報は、“19.0”、“20.0”、及び“21.0”である。
この場合、いずれのIOデバイス625-jのデバイス番号も“0”であるため、アドレス情報に含まれるバス番号によって、各IOデバイス625-jが識別される。primary“0xFF”は、IOデバイス情報644の末尾を示す。
CPU611は、BIOS621を実行することで管理装置602にアクセスし、管理装置602から、状態情報641、経路構成情報642、交代要因情報643、及びIOデバイス情報644を読み出すことができる。状態情報641及び経路構成情報642を読み出すことで、現在の情報処理装置601の経路構成を認識することが可能になる。
管理装置602の制御部632は、経路構成情報642に基づいて、BUS-SW623-i及びBUS-SW624-iのポートの状態を制御することで、情報処理装置601の経路構成を変更する。
例えば、BUS-SW623-1のポート番号“1”のポートを活性化することで、信号線616-1による接続が有効化され、信号線616-1が使用可能になる。一方、そのポートを非活性化することで、信号線616-1による接続が無効化される。また、BUS-SW623-1のポート番号“2”のポートを活性化することで、信号線617-1による接続が有効化され、信号線617-1が使用可能になる。一方、そのポートを非活性化することで、信号線617-1による接続が無効化される。
信号線616-2及び信号線617-2の接続についても、信号線616-1及び信号線617-1と同様にして制御される。
管理装置602は、構成初期化時に、情報処理装置601の経路構成を一意に決定し、情報処理装置601の動作中には、いずれかの経路構成のみが有効になるように情報処理装置601を制御する。そして、管理装置602は、IOエラー発生時に、経路構成を別の経路構成に切り替えることで、被疑部品の絞り込みを行う。これにより、経路に含まれるBUS-SW及びIOデバイスのうちいずれの部品が故障しているかを、効率的に特定することが可能になり、問題解決までの時間が短縮される。
また、経路構成を切り替えることにより、固定的なIOエラーが繰り返し発生する場合だけでなく、IOエラーが間歇的に発生する場合であっても、被疑部品を確実に絞り込むことが可能になる。
次に、図11~図16を参照しながら、管理装置602が行うエラー制御処理について詳細に説明する。
図11は、管理装置602が行うエラー制御処理の例を示すフローチャートである。図11のエラー制御処理は、監視部634がBIOS621又はOS622からエラー報告を受信したときに開始される。
まず、特定部633は、エラー報告からエラー情報を読み出し(ステップ1101)、記憶部631から交代要因情報643を読み出す(ステップ1102)。次に、特定部633は、再起動フラグを論理“1”に設定し(ステップ1103)、エラー報告のエラー情報がデバイスエラーを示しているか否かをチェックする(ステップ1104)。
例えば、PCIの仕様によれば、IOデバイス内のステータスレジスタにエラービットが含まれており、エラービットが論理“1”の場合、IOデバイスのデバイスエラーを示す。このエラービットは、監視部634が受信するエラー報告にも含まれている。そこで、特定部633は、エラービットが論理“1”の場合、エラー情報がデバイスエラーを示していると判定し、エラービットが論理“0”の場合、エラー情報がデバイスエラーを示していないと判定することができる。
エラー情報がデバイスエラーを示している場合(ステップ1104,YES)、管理装置602は、エラー情報が示すIOデバイスを被疑部品として特定し、デバイスエラー処理を行う(ステップ1105)。一方、エラー情報がデバイスエラーを示していない場合(ステップ1104,NO)、管理装置602は、経路上のエラーが発生したと判定し、経路エラー処理を行う(ステップ1106)。
次に、特定部633は、再起動フラグが論理“1”であるか否かをチェックする(ステップ1107)。再起動フラグが論理“1”である場合(ステップ1107,YES)、特定部633は、CPU611に対して再起動要求を送信する(ステップ1108)。一方、再起動フラグが論理“0”である場合(ステップ1107,NO)、特定部633は、処理を終了する。
図12は、図11のステップ1105におけるデバイスエラー処理の例を示すフローチャートである。まず、制御部632は、状態情報641のエントリ番号enが交代構成を示しているか否かをチェックする(ステップ1201)。エントリ番号enが“2”又は“3”である場合、エントリ番号enが交代構成を示していると判定される。
エントリ番号enが交代構成を示している場合(ステップ1201,YES)、制御部632は、構成変更処理を行って、情報処理装置601の経路構成を通常構成に変更する(ステップ1202)。そして、制御部632は、状態情報641のエントリ番号enを、通常構成を示すエントリ番号“1”に変更して(ステップ1203)、デバイス切り離し処理を行う(ステップ1204)。
エントリ番号enが通常構成又は縮退構成を示している場合(ステップ1201,NO)、制御部632は、デバイス切り離し処理を行う(ステップ1204)。
図13は、図12のステップ1204におけるデバイス切り離し処理の例を示すフローチャートである。まず、制御部632は、エラー情報が示すIOデバイスを経路構成から切り離す(ステップ1301)。例えば、制御部632は、エラー情報のアドレス情報が示すBUS-SWのポートを非活性化することで、IOデバイスを切り離すことができる。
次に、特定部633は、被疑部品であるIOデバイスが切り離されたことを示すSELを出力する(ステップ1302)。
図14は、図11のステップ1106における経路エラー処理の例を示すフローチャートである。まず、制御部632は、状態情報641のエントリ番号enが示す経路構成をチェックする(ステップ1401)。
エントリ番号enが通常構成を示している場合(ステップ1401,通常)、特定部633は、エラー報告に含まれるエラー情報のアドレス情報を、交代要因情報643として保存する(ステップ1402)。次に、制御部632は、エラー情報のアドレス情報が示すBUS-SWのスイッチ番号を対象スイッチ番号として用いて、構成変更処理を行い、情報処理装置601の経路構成を交代構成に変更する(ステップ1403)。
次に、制御部632は、状態情報641のエントリ番号enを、交代構成を示すエントリ番号に変更し(ステップ1404)、特定部633は、経路構成が交代構成に変更されたことを示すSELを出力する(ステップ1405)。
エントリ番号enが交代構成を示している場合(ステップ1401,交代)、特定部633は、エラー情報と交代要因情報643とを比較する(ステップ1406)。エラー情報のアドレス情報のバス番号及びデバイス番号と、交代要因情報643のBUS#及びDEV#とがそれぞれ同一である場合、エラー情報と交代要因情報643とが一致すると判定される。一方、バス番号とBUS#とが異なる場合、又は、デバイス番号とDEV#とが異なる場合は、エラー情報と交代要因情報643とが一致しないと判定される。
エラー情報と交代要因情報643とが一致する場合(ステップ1406,YES)、管理装置602は、エラー情報が示すIOデバイスを被疑部品として特定し、図13のデバイス切り離し処理を行う(ステップ1407)。
一方、エラー情報と交代要因情報643とが一致しない場合(ステップ1406,NO)、特定部633は、スイッチ検索処理を行う(ステップ1408)。そして、特定部633は、エラー情報が示すIOデバイスが、他端IOデバイス又は隣接IOデバイスのいずれであるかを判定する(ステップ1409)。
隣接IOデバイスは、交代要因情報643が示すIOデバイスが接続されているBUS-SWに接続されている、別のIOデバイスを指す。他端IOデバイスは、交代要因情報643が示すIOデバイスが接続されているBUS-SWとは異なるBUS-SWに接続されているIOデバイスを指す。
例えば、交代要因情報643が図6のIOデバイス625-1を示している場合、IOデバイス625-2及びIOデバイス625-3は、隣接IOデバイスであり、IOデバイス625-4~IOデバイス625-6は、他端IOデバイスである。
エラー情報が示すIOデバイスが他端IOデバイスである場合(ステップ1409,他端)、特定部633は、通常構成においてエラーが検出された経路と、交代構成においてエラーが検出された経路とに共通する上位のBUS-SWを、被疑部品として特定する。
例えば、図8の通常構成においてIOデバイス625-1のIOエラーが検出された場合、CPU611からIOデバイス625-1までの経路には、BUS-SW623-1、BUS-SW624-1、及びIOデバイス625-1が含まれる。
続いて、図9の交代構成においてIOデバイス625-5のIOエラーが検出された場合、CPU611からIOデバイス625-5までの経路には、BUS-SW623-1、BUS-SW624-2、及びIOデバイス625-5が含まれる。両方の経路に共通に含まれる上位のBUS-SWはBUS-SW623-1であるため、BUS-SW623-1が被疑部品として特定される。
上位のBUS-SWが被疑部品として特定された場合、制御部632は、被疑部品であるBUS-SWのスイッチ番号を対象スイッチ番号として用いて、構成変更処理を行い、情報処理装置601の経路構成を縮退構成に変更する(ステップ1410)。
次に、制御部632は、状態情報641のエントリ番号enを、縮退構成を示すエントリ番号に変更し(ステップ1411)、特定部633は、被疑部品を示すSELを出力する(ステップ1412)。
エラー情報が示すIOデバイスが隣接IOデバイスである場合(ステップ1409,隣接)、特定部633は、通常構成においてエラーが検出された経路と、交代構成においてエラーが検出された経路とに共通する下位のBUS-SWを、被疑部品として特定する。
例えば、図8の通常構成においてIOデバイス625-1のIOエラーが検出された場合、CPU611からIOデバイス625-1までの経路には、BUS-SW623-1、BUS-SW624-1、及びIOデバイス625-1が含まれる。
続いて、図9の交代構成においてIOデバイス625-2のIOエラーが検出された場合、CPU611からIOデバイス625-2までの経路には、BUS-SW623-2、BUS-SW624-1、及びIOデバイス625-2が含まれる。両方の経路に共通に含まれる下位のBUS-SWはBUS-SW624-1であるため、BUS-SW624-1が被疑部品として特定される。
下位のBUS-SWが被疑部品として特定された場合、特定部633は、被疑部品を示すSELを出力し(ステップ1413)、再起動フラグを論理“0”に設定する(ステップ1414)。
エントリ番号enが縮退構成を示している場合(ステップ1401,縮退)、特定部633は、多重スイッチエラーの発生を示すSELを出力し(ステップ1415)、再起動フラグを論理“0”に設定する(ステップ1414)。
図15は、図14のステップ1408におけるスイッチ検索処理の例を示すフローチャートである。まず、特定部633は、IOデバイス情報644の最初のエントリを読み出し(ステップ1501)、読み出したエントリにエラー情報のアドレス情報が含まれているか否かをチェックする(ステップ1502)。
読み出したエントリにエラー情報のアドレス情報が含まれていない場合(ステップ1502,NO)、特定部633は、読み出したエントリが最終エントリであるか否かをチェックする(ステップ1503)。読み出したエントリが最終エントリではない場合(ステップ1503,NO)、特定部633は、次のエントリについて、ステップ1501以降の処理を繰り返す。一方、読み出したエントリが最終エントリである場合(ステップ1503,YES)、特定部633は、処理を終了する。
読み出したエントリにエラー情報のアドレス情報が含まれている場合(ステップ1502,YES)、特定部633は、読み出したエントリに交代要因情報643が示すアドレス情報が含まれているか否かをチェックする(ステップ1504)。
読み出したエントリに交代要因情報643が示すアドレス情報が含まれていない場合(ステップ1504,NO)、特定部633は、他端条件が成立したと判定する(ステップ1505)。一方、読み出したエントリに交代要因情報643が示すアドレス情報が含まれている場合(ステップ1504,YES)、特定部633は、隣接条件が成立したと判定する(ステップ1506)。
図14のステップ1409において、特定部633は、他端条件が成立した場合、エラー情報が示すIOデバイスは他端IOデバイスであると判定し、隣接条件が成立した場合、エラー情報が示すIOデバイスは隣接IOデバイスであると判定する。
一例として、エラー情報のアドレス情報が“20.0”であり、交代要因情報643が示すアドレス情報が“13.0”である場合について説明する。この場合、図7(d)のIOデバイス情報644において、スイッチ番号“2”のエントリに、エラー情報のアドレス情報“20.0”が含まれている。しかし、このエントリには、交代要因情報643が示すアドレス情報“13.0”が含まれていないため、他端条件が成立したと判定される。
次に、エラー情報のアドレス情報が“14.0”であり、交代要因情報643が示すアドレス情報が“13.0”である場合について説明する。この場合、図7(d)のIOデバイス情報644において、スイッチ番号“1”のエントリに、エラー情報のアドレス情報“14.0”が含まれている。さらに、このエントリには、交代要因情報643が示すアドレス情報“13.0”も含まれているため、隣接条件が成立したと判定される。
このように、図14の経路エラー処理によれば、エラー情報と交代要因情報643とを比較することで、エラー情報が示すIOデバイス又は経路上のBUS-SWのうちいずれが被疑部品であるかを切り分けることができる。さらに、図15のスイッチ検索処理によれば、エラー情報が示すIOデバイスと交代要因情報643が示すIOデバイスとが同じBUS-SWに接続されているか否かをチェックすることで、いずれかのBUS-SWを被疑部品として特定することができる。
図16は、図12のステップ1202、図14のステップ1403、及びステップ1410における構成変更処理の例を示すフローチャートである。まず、制御部632は、変更後の経路構成を選択する(ステップ1601)。ステップ1202の構成変更処理では、通常構成が選択され、ステップ1403の構成変更処理では、交代構成が選択され、ステップ1410の構成変更処理では、縮退構成が選択される。
通常構成を選択した場合(ステップ1601,通常)、制御部632は、経路構成情報642から通常構成のエントリを読み出し(ステップ1603)、読み出したエントリのポート活性状態リストを取得する(ステップ1609)。そして、制御部632は、取得したポート活性状態リストに基づいて、各BUS-SW623-iを制御する(ステップ1610)。このとき、制御部632は、ポート活性状態リストに含まれる各BUS-SW623-iについて、on/offが“1”であるポートを活性化し、on/offが“0”であるポートを非活性化する。
例えば、図7(b)のエントリ番号“1”のエントリが読み出された場合、BUS-SW623-1のport-ID“1”のポートが活性化され、port-ID“2”のポートが非活性化される。また、BUS-SW623-2のport-ID“1”のポートが活性化され、port-ID“2”のポートが非活性化される。これにより、経路構成が図8の通常構成に変更される。
交代構成を選択した場合(ステップ1601,交代)、制御部632は、対象スイッチ番号をチェックする(ステップ1604)。対象スイッチ番号が“1”である場合(ステップ1604,YES)、制御部632は、経路構成情報642から、対象スイッチ番号“1”を含む交代構成のエントリを読み出し(ステップ1605)、ステップ1609以降の処理を行う。
例えば、図7(b)のエントリ番号“2”のエントリが読み出された場合、BUS-SW623-1のport-ID“1”のポートが非活性化され、port-ID“2”のポートが活性化される。また、BUS-SW623-2のport-ID“1”のポートが非活性化され、port-ID“2”のポートが活性化される。これにより、経路構成が図9の交代構成に変更される。
一方、対象スイッチ番号が“2”である場合(ステップ1604,NO)、制御部632は、経路構成情報642から、対象スイッチ番号“2”を含む交代構成のエントリを読み出し(ステップ1606)、ステップ1609以降の処理を行う。
縮退構成を選択した場合(ステップ1601,縮退)、制御部632は、対象スイッチ番号をチェックする(ステップ1602)。対象スイッチ番号が“1”である場合(ステップ1602,YES)、制御部632は、経路構成情報642から、対象スイッチ番号“1”を含む縮退構成のエントリを読み出し(ステップ1607)、ステップ1609以降の処理を行う。
例えば、図7(b)のエントリ番号“5”のエントリが読み出された場合、BUS-SW623-1のport-ID“1”及びport-ID“2”のポートが非活性化される。また、BUS-SW623-2のport-ID“1”及びport-ID“2”のポートが活性化される。これにより、経路構成が図10の縮退構成に変更される。
一方、対象スイッチ番号が“2”である場合(ステップ1602,NO)、制御部632は、経路構成情報642から、対象スイッチ番号“2”を含む縮退構成のエントリを読み出し(ステップ1608)、ステップ1609以降の処理を行う。
次に、図17~図23を参照しながら、情報処理装置601のCPU611が実施するPOSTについて詳細に説明する。
図17は、CPU611がBIOS621を実行することで実施されるPOSTの例を示すフローチャートである。まず、CPU611は、CPU初期化処理を行い(ステップ1701)、IO初期化処理を行う(ステップ1702)。次に、CPU611は、ブート制御処理を行う(ステップ1703)。
図18は、図17のステップ1701におけるCPU初期化処理の例を示すフローチャートである。CPU611は、CPUコアを初期化し(ステップ1801)、メモリ612を初期化する(ステップ1802)。
図19は、図17のステップ1702におけるIO初期化処理の例を示すフローチャートである。まず、CPU611は、通信処理を行って、管理装置602から状態情報641を読み出し(ステップ1901)、状態情報641のエントリ番号enが示す経路構成をチェックする(ステップ1902)。
エントリ番号enが示す経路構成が縮退構成である場合(ステップ1902,縮退)、CPU611は、通信処理を行って、管理装置602からIOデバイス情報644を読み出す(ステップ1903)。そして、CPU611は、IOデバイス情報644に含まれる各IOデバイスのアドレス情報をレジスタに設定する(ステップ1904)。
エントリ番号enが示す経路構成が交代構成である場合(ステップ1902,交代)、CPU611は、通信処理を行って、管理装置602から交代要因情報643及びIOデバイス情報644を読み出す(ステップ1905)。次に、CPU611は、IOデバイス情報644に含まれる各IOデバイスのアドレス情報をレジスタに設定する(ステップ1906)。
次に、CPU611は、IOデバイス情報644から、交代要因情報643が示すアドレス情報を含むエントリを選択する。CPU611は、選択したエントリに含まれるアドレス情報のうち、交代要因情報643が示すアドレス情報とは異なる1つのアドレス情報を選択し、選択したアドレス情報が示すIOデバイスを、隣接IOデバイスとして特定する。
また、CPU611は、IOデバイス情報644から、交代要因情報643が示すアドレス情報を含むエントリとは異なるスイッチ番号を有するエントリを選択する。CPU611は、選択したエントリに含まれる1つのアドレス情報を選択し、選択したアドレス情報が示すIOデバイスを、他端IOデバイスとして特定する。
そして、CPU611は、交代要因情報643が示すIOデバイスと、特定した隣接IOデバイス及び他端IOデバイスとを用いて、診断処理を行う(ステップ1907)。
エントリ番号enが示す経路構成が通常構成である場合(ステップ1902,通常)、CPU611は、IOバス上を探索して、情報処理装置601に搭載されているIOデバイスを検出する(ステップ1908)。次に、CPU611は、検出したIOデバイスにアドレス情報を割り当て、割り当てたアドレス情報をレジスタに設定する(ステップ1909)。そして、CPU611は、通信処理を行って、IOデバイスの情報を管理装置602へ送信する(ステップ1910)。
図20は、図19のステップ1901、ステップ1903、ステップ1905、及びステップ1910における通信処理の例を示すフローチャートである。CPU611は、管理装置602へ命令を送信し(ステップ2001)、管理装置602から応答を受信する(ステップ2002)。
ステップ1901の通信処理では、CPU611は、状態情報641を読み出す読み出し命令を送信し、状態情報641を含む応答を受信する。ステップ1903の通信処理では、CPU611は、IOデバイス情報644を読み出す読み出し命令を送信し、IOデバイス情報644を含む応答を受信する。ステップ1905の通信処理では、CPU611は、交代要因情報643及びIOデバイス情報644を読み出す読み出し命令を送信し、交代要因情報643及びIOデバイス情報644を含む応答を受信する。
ステップ1910の通信処理では、CPU611は、IOデバイスの情報を書き込む書き込み命令を送信し、その情報を受信したことを示す応答を受信する。管理装置602へ送信される情報には、各IOデバイスが接続されているBUS-SWのスイッチ番号及びバス番号と、各IOデバイスのアドレス情報とが含まれる。管理装置602の特定部633は、受信した情報を、IOデバイス情報644として記憶部631に格納する。
図21は、図19のステップ1907における診断処理の例を示すフローチャートである。まず、CPU611は、他端IOデバイスのドライバを読み込み、読み込んだドライバを用いてそのIOデバイスにアクセスし、そのIOデバイスを初期化する(ステップ2101)。そして、CPU611は、他端IOデバイスに対するアクセスにおいて、エラーが検出されたか否かをチェックする(ステップ2102)。
エラーが検出された場合(ステップ2102,YES)、CPU611は、エラー検出処理を行う(ステップ2107)。この場合、CPU611は、CPU611内のエラーレジスタに、エラーが検出されたIOデバイスのエラー情報を書き込む。
一方、エラーが検出されなかった場合(ステップ2102,NO)、CPU611は、隣接IOデバイスのドライバを読み込み、読み込んだドライバを用いてそのIOデバイスにアクセスし、そのIOデバイスを初期化する(ステップ2103)。そして、CPU611は、隣接IOデバイスに対するアクセスにおいて、エラーが検出されたか否かをチェックする(ステップ2104)。エラーが検出された場合(ステップ2104,YES)、CPU611は、エラー検出処理を行う(ステップ2107)。
一方、エラーが検出されなかった場合(ステップ2104,NO)、CPU611は、交代要因情報643が示すIOデバイスのドライバを読み込む(ステップ2105)。そして、CPU611は、読み込んだドライバを用いてそのIOデバイスにアクセスし、そのIOデバイスを初期化する。次に、CPU611は、交代要因情報643が示すIOデバイスに対するアクセスにおいて、エラーが検出されたか否かをチェックする(ステップ2106)。エラーが検出された場合(ステップ2106,YES)、CPU611は、エラー検出処理を行う(ステップ2107)。
一方、エラーが検出されなかった場合(ステップ2106,NO)、CPU611は、処理を終了する。
図22は、図21のステップ2103におけるエラー検出処理の例を示すフローチャートである。CPU611は、エラーレジスタからエラー情報を読み出し(ステップ2201)、図20の通信処理を行って、読み出したエラー情報を含むエラー報告を管理装置602へ送信する(ステップ2202)。この場合、CPU611は、エラー報告を含む命令を送信し、エラー報告を受信したことを示す応答を受信する。
交代構成の状態において図21の診断処理を行うことで、BIOS621の動作中に、各IOデバイスに対するアクセスが発生することが保証される。診断処理においてエラーが検出された場合、エラーが検出されたIOデバイスが、交代要因情報643が示すIOデバイス、他端IOデバイス、又は隣接IOデバイスのいずれであっても、エラー報告が管理装置602へ送信される。したがって、管理装置602は、図11のエラー制御処理を行って、被疑部品を特定することができる。
一方、診断処理においてエラーが検出されなかった場合、交代要因情報643が示すIOデバイス、他端IOデバイス、又は隣接IOデバイスのいずれに対しても、アクセスが可能な状態である。したがって、交代要因情報643が示すエラーは、固定故障ではなく、間歇故障に起因するものと考えられる。
この場合、被疑部品は特定されないため、交代構成で情報処理装置601の運用が継続され、運用中におけるエラーの発生が監視される。運用中にOS622によりエラーが検出された場合、管理装置602は、OS622からのエラー報告に基づいて、図11のエラー制御処理を行い、被疑部品を特定することができる。
図21の診断処理は、情報処理装置601の現地調整における初期エラーの検出にも利用することができる。
なお、図21のステップ2101において、CPU611は、1つの他端IOデバイスを初期化する代わりに、複数の他端IOデバイスを初期化してもよい。同様に、ステップ2103において、CPU611は、1つの隣接IOデバイスを初期化する代わりに、複数の隣接IOデバイスを初期化してもよい。
図23は、図17のステップ1703におけるブート制御処理の例を示すフローチャートである。まず、CPU611は、ユーザからBIOS621のセットアップが指示されたか否かをチェックする(ステップ2301)。
セットアップが指示されていない場合(ステップ2301,NO)、CPU611は、OSを起動するためのリソースとして使用されるIOデバイス(ブートデバイス)のドライバを読み込む(ステップ2302)。そして、CPU611は、OSブートを行ってOS622を起動する(ステップ2303)。
一方、セットアップが指示された場合(ステップ2301,YES)、CPU611は、セットアップメニューを起動する(ステップ2304)。
図6の情報処理システムによれば、上位のBUS-SWと下位のBUS-SWとの間に冗長経路の信号線を追加するだけで、被疑部品の絞り込み精度を向上させることができる。被疑部品が特定された場合、その部品が切り離されるため、同じ部品に起因するエラーの再発が回避される。
交代構成における動作は特殊な動作ではないため、診断処理でエラーが検出されなかった場合に通常構成に戻す必要はなく、そのまま運用を継続することが可能である。
最終的に上位のBUS-SWが被疑部品として特定された場合、そのBUS-SWを切り離して縮退構成を実現することができ、被疑部品の交換を待たずに、運用を継続することができる。これにより、経路上の部品の故障によるシステムダウンが回避される。
故障部品が確定し、その部品の修理又は交換が行われた後、管理装置602は、経路構成を通常構成に戻す制御を行う。この場合、管理装置602内の状態情報641のエントリ番号enは、通常構成を示すエントリ番号に変更され、交代要因情報643は消去される。
図24は、図6の情報処理装置601において経路構成が変更される第1の動作シーケンスの例を示している。初期状態において、情報処理装置601の経路構成は、図8の通常構成に設定される。
まず、時刻B1において、OS622は、IOデバイス625-1のIOエラーを検出し、管理装置602に対して1回目のIOエラーを報告する。管理装置602は、エラー報告を受信してエラー情報を保存する。この場合、エラー情報がデバイスエラーを示していないため、管理装置602は、図14の経路エラー処理を行う。
経路エラー処理において、管理装置602は、状態情報641を読み出して、障害切分処理を行う。状態情報641は通常構成を示しているため、管理装置602は、状態情報641が示す経路構成を交代構成に更新し、IOデバイス625-1を示す交代要因情報643を保存する。この時点における被疑部品は、CPU611からIOデバイス625-1までの経路に含まれるBUS-SW623-1、BUS-SW624-1、及びIOデバイス625-1である。
次に、管理装置602は、図16の構成変更処理を行って、経路構成情報642から交代構成を示すエントリを読み出し、交代構成の経路を設定する。そして、管理装置202は、OS622に対して再起動要求を送信することで、OS622をリセットする。OS622は、再起動要求に応答して情報処理装置601を再起動し、BIOS621は、図17のPOSTを実施する。
時刻B2において、BIOS621は、図19のIO初期化処理を行って、管理装置602から状態情報641及びIOデバイス情報644を読み出す。状態情報641は交代構成を示しているため、BIOS621は、各IOデバイスのアドレス情報をレジスタに設定することで、IOバスを設定する。そして、時刻B3において、BIOS621は、図21の診断処理を行って、IOデバイス625-5のIOエラーを検出し、管理装置602に対して2回目のIOエラーを報告する。
管理装置602は、エラー報告を受信してエラー情報を保存し、経路エラー処理を行う。経路エラー処理において、管理装置602は、状態情報641及び交代要因情報643を読み出して、障害切分処理を行う。状態情報641は交代構成を示しており、エラー情報と交代要因情報643とが一致しないため、管理装置602は、図15のスイッチ検索処理を行う。
IOデバイス625-5が接続されているBUS-SW624-2は、IOデバイス625-1が接続されているBUS-SW624-1とは異なるため、IOデバイス625-5は他端IOデバイスであると判定される。そこで、管理装置602は、CPU611からIOデバイス625-1までの経路と、CPU611からIOデバイス625-5までの経路とに共通して含まれる、上位のBUS-SW623-1を、被疑部品として特定する。そして、管理装置602は、状態情報641が示す経路構成を縮退構成に更新し、交代要因情報643をIOデバイス625-5を示す情報に更新する。
次に、管理装置602は、構成変更処理を行って、経路構成情報642から縮退構成を示すエントリを読み出し、縮退構成の経路を設定する。そして、管理装置202は、OS622に対して再起動要求を送信することで、OS622をリセットする。OS622は、再起動要求に応答して情報処理装置601を再起動し、BIOS621は、POSTを実施する。
時刻B4において、BIOS621は、IO初期化処理を行って、管理装置602から状態情報641及びIOデバイス情報644を読み出す。状態情報641は縮退構成を示しているため、BIOS621は、各IOデバイスのアドレス情報をレジスタに設定することで、IOバスを設定する。そして、BIOS621は、OSブートを行ってOS622を起動する。
図25は、図6の情報処理装置601において経路構成が変更される第2の動作シーケンスの例を示している。第2の動作シーケンスでは、BUS-SW623-1の間歇故障に起因するエラーが発生し、交代構成におけるPOSTの実施中にはエラーが再発せず、OS622によってエラーの再発が検出される。時刻C1及び時刻C2における動作は、図24の時刻B1及び時刻B2における動作と同様である。
BIOS621は、IOバスを設定した後、診断処理を行う。しかし、IOエラーが検出されないため、BIOS621は、OSブートを行ってOS622を起動する。
時刻C3において、OS622は、IOデバイス625-5のIOエラーを検出し、管理装置602に対して2回目のIOエラーを報告する。
管理装置602は、図24と同様の動作を行って、上位のBUS-SW623-1を被疑部品として特定し、構成変更処理を行って、縮退構成の経路を設定する。そして、管理装置202は、OS622に対して再起動要求を送信することで、OS622をリセットする。OS622は、再起動要求に応答して情報処理装置601を再起動し、BIOS621は、POSTを実施する。
時刻C4において、BIOS621は、IOバスを設定し、OSブートを行ってOS622を起動する。
このように、IOエラーが間歇的に発生する場合であっても、交代構成におけるエラー監視を継続することで、被疑部品を特定することができる。
図1の情報処理装置101の構成は一例に過ぎず、情報処理装置101の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。
図2の情報処理装置201の構成は一例に過ぎず、情報処理装置201の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、上位のBUS-SWの個数は、4個に限られるわけではなく、K個(Kは2以上の整数)であってもよい。同様に、下位のBUS-SWの個数は、4個に限られるわけではなく、K個であってもよい。下位のBUS-SWに接続されるIOデバイスの個数は、3個に限られるわけではなく、L個(Lは1以上の整数)であってもよい。
図4の管理装置401の構成は一例に過ぎず、管理装置401の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。
図6の情報処理システムの構成は一例に過ぎず、情報処理システムの用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、情報処理装置601に含まれる上位モジュールの個数は、2個に限られるわけではなく、K個であってもよい。同様に、下位モジュールの個数は、2個に限られるわけではなく、K個であってもよい。下位のBUS-SWに接続されるIOデバイスの個数は、3個に限られるわけではなく、L個であってもよい。
BUS-SWを含むモジュールの段数は、上位モジュール及び下位モジュールの2段に限られるわけではなく、M段(Mは2以上の整数)であってもよい。この場合、p段目(p=1~M-1)のBUS-SWとp+1段目のBUS-SWとの間の経路を冗長構成にすることで、被疑部品を1段ずつ絞り込むことが可能になる。
図5及び図11~図23のフローチャートは一例に過ぎず、情報処理システムの構成又は条件に応じて一部の処理を省略又は変更してもよい。例えば、縮退構成における運用を行わない場合は、図14のステップ1415、図16のステップ1602、ステップ1607、及びステップ1608、図19のステップ1903及びステップ1904の処理を省略することができる。
図7に示した状態情報641、経路構成情報642、交代要因情報643、及びIOデバイス情報644は一例に過ぎず、これらの情報は、情報処理装置601の構成又は条件に応じて変化する。例えば、縮退構成における運用を行わない場合は、図7(b)のエントリ番号“5”及びエントリ番号“6”のエントリを省略することができる。
図8~図10に示した経路構成は一例に過ぎず、経路構成は、情報処理装置601の構成又は条件に応じて変化する。図3、図24、及び図25に示した動作シーケンスは一例に過ぎず、動作シーケンスは、情報処理システムの構成及び故障部品に応じて変化する。
図26は、図2の管理装置202、図4の管理装置401、及び図6の管理装置602として用いられる情報処理装置のハードウェア構成例を示している。図26の情報処理装置は、CPU2601、メモリ2602、入力装置2603、出力装置2604、補助記憶装置2605、媒体駆動装置2606、及びネットワーク接続装置2607を含む。これらの構成要素はバス2608により互いに接続されている。
メモリ2602は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。メモリ2602は、図4の記憶部411又は図6の記憶部631として用いることができる。
CPU2601(プロセッサ)は、例えば、メモリ2602を利用してプログラムを実行することにより、図4の制御部412及び特定部413として動作する。CPU2601は、メモリ2602を利用してプログラムを実行することにより、図6の制御部632、特定部633、及び監視部634としても動作する。
入力装置2603は、例えば、キーボード、ポインティングデバイス等であり、オペレータ又はユーザからの指示又は情報の入力に用いられる。出力装置2604は、例えば、表示装置、プリンタ、スピーカ等であり、オペレータ又はユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。処理結果は、SELであってもよい。
補助記憶装置2605は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置2605は、ハードディスクドライブであってもよい。情報処理装置は、補助記憶装置2605にプログラム及びデータを格納しておき、それらをメモリ2602にロードして使用することができる。補助記憶装置2605は、図4の記憶部411又は図6の記憶部631として用いることができる。
媒体駆動装置2606は、可搬型記録媒体2609を駆動し、その記録内容にアクセスする。可搬型記録媒体2609は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体2609は、CD-ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等であってもよい。オペレータ又はユーザは、この可搬型記録媒体2609にプログラム及びデータを格納しておき、それらをメモリ2602にロードして使用することができる。
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ2602、補助記憶装置2605、又は可搬型記録媒体2609のような、物理的な(非一時的な)記録媒体である。
ネットワーク接続装置2607は、LAN(Local Area Network)、WAN(Wide Area Network)等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェース回路である。情報処理装置は、ネットワーク接続装置2607を介して情報処理装置601と通信する。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置2607を介して受信し、それらをメモリ2602にロードして使用することもできる。
なお、情報処理装置が図26のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、ユーザ又はオペレータとのインタフェースが不要である場合は、入力装置2603及び出力装置2604を省略してもよい。また、可搬型記録媒体2609を使用しない場合は、媒体駆動装置2606を省略してもよい。
図6の情報処理装置201及び図6の情報処理装置601としても、図26と同様の情報処理装置が用いられる。
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
図2乃至図26を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
(付記1)
プロセッサから複数の入出力装置までの第1経路構成と前記プロセッサから前記複数の入出力装置までの第2経路構成とを示す経路構成情報を記憶する記憶部と、
前記プロセッサから前記複数の入出力装置までの経路構成が前記第1経路構成である状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記第1経路構成を前記第2経路構成に切り替える制御部と、
切り替え後の前記第2経路構成の状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記第1経路構成の状態においてエラーが検出された入出力装置と前記第2経路構成の状態においてエラーが検出された入出力装置とを比較した比較結果に基づいて、前記プロセッサから前記複数の入出力装置までの経路構成に含まれる被疑部品を特定する特定部と、
を備えることを特徴とする管理装置。
(付記2)
前記プロセッサから前記複数の入出力装置までの経路構成は、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記制御部は、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
前記特定部は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第2下位スイッチに接続されている第2入出力装置である場合、前記複数の上位スイッチのうち、前記第1経路構成の状態において前記第1下位スイッチに接続されている上位スイッチを、前記被疑部品として特定することを特徴とする付記1記載の管理装置。
(付記3)
前記制御部は、前記第2経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第2経路構成を、前記被疑部品として特定された上位スイッチを使用しない第3経路構成に切り替えることを特徴とする付記2記載の管理装置。
(付記4)
前記プロセッサから前記複数の入出力装置までの経路構成は、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記制御部は、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
前記特定部は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記第1下位スイッチに接続されている第2入出力装置である場合、前記第1下位スイッチを前記被疑部品として特定することを特徴とする付記1記載の管理装置。
(付記5)
前記プロセッサから前記複数の入出力装置までの経路構成は、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記制御部は、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
前記特定部は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記第2経路構成の状態においてエラーが検出された入出力装置と同一である場合、エラーが検出された入出力装置を前記被疑部品として特定することを特徴とする付記1記載の管理装置。
(付記6)
プロセッサと、
複数の入出力装置と、
前記プロセッサと前記複数の入出力装置との間の経路を切り替える複数のスイッチとを備え、
前記複数のスイッチは、前記プロセッサから前記複数の入出力装置までの経路構成が第1経路構成である状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーを前記プロセッサが検出した場合、前記第1経路構成を第2経路構成に切り替え、切り替え後の前記第2経路構成の状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーを前記プロセッサが検出した場合、前記第1経路構成の状態においてエラーが検出された入出力装置と前記第2経路構成の状態においてエラーが検出された入出力装置とが比較された比較結果に基づいて、前記第2経路構成を第3経路構成に切り替えることを特徴とする情報処理装置。
(付記7)
前記複数のスイッチは、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記複数の上位スイッチは、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
前記比較結果は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第2下位スイッチに接続されている第2入出力装置であることを示し、
前記複数の上位スイッチは、前記第2経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第2経路構成を前記第3経路構成に切り替え、
前記第3経路構成は、前記複数の上位スイッチのうち、前記第1経路構成の状態において前記第1下位スイッチに接続されている上位スイッチを使用しない経路構成であることを特徴とする付記6記載の情報処理装置。
(付記8)
プロセッサから複数の入出力装置までの経路構成が第1経路構成である状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記第1経路構成を第2経路構成に切り替え、
切り替え後の前記第2経路構成の状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記第1経路構成の状態においてエラーが検出された入出力装置と前記第2経路構成の状態においてエラーが検出された入出力装置とを比較した比較結果に基づいて、前記プロセッサから前記複数の入出力装置までの経路構成に含まれる被疑部品を特定する、
処理をコンピュータに実行させるためのプログラム。
(付記9)
前記プロセッサから前記複数の入出力装置までの経路構成は、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記コンピュータは、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第2下位スイッチに接続されている第2入出力装置である場合、前記複数の上位スイッチのうち、前記第1経路構成の状態において前記第1下位スイッチに接続されている上位スイッチを、前記被疑部品として特定することを特徴とする付記8記載のプログラム。
(付記10)
前記コンピュータは、前記第2経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第2経路構成を、前記被疑部品として特定された上位スイッチを使用しない第3経路構成に切り替えることを特徴とする付記9記載のプログラム。
(付記11)
前記プロセッサから前記複数の入出力装置までの経路構成は、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記コンピュータは、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記第1下位スイッチに接続されている第2入出力装置である場合、前記第1下位スイッチを前記被疑部品として特定することを特徴とする付記8記載のプログラム。
(付記12)
前記プロセッサから前記複数の入出力装置までの経路構成は、複数の上位スイッチと複数の下位スイッチとを含み、
前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
前記コンピュータは、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記第2経路構成の状態においてエラーが検出された入出力装置と同一である場合、エラーが検出された入出力装置を前記被疑部品として特定することを特徴とする付記8記載のプログラム。
101、201、601 情報処理装置
111、211、611 CPU
112-1~112-3、215-1~215-12、625-1~625-6 IOデバイス
113-1~113-3 IOインタフェース
202、401、602 管理装置
212、612 メモリ
301、622 OS
302、621 BIOS
411、631 記憶部
412、632 制御部
413、633 特定部
421 経路構成情報
613-1、613-2 上位モジュール
614-1、614-2 下位モジュール
623-1、623-2、624-1、624-2 BUS-SW
615-1、615-2、616-1、616-2、617-1、617-2 信号線
634 監視部
641 状態情報
642 経路構成情報
643 交代要因情報
644 IOデバイス情報
2601 CPU
2602 メモリ
2603 入力装置
2604 出力装置
2605 補助記憶装置
2606 媒体駆動装置
2607 ネットワーク接続装置
2608 バス
2609 可搬型記録媒体

Claims (7)

  1. プロセッサから複数の入出力装置までの第1経路構成と前記プロセッサから前記複数の入出力装置までの第2経路構成とを示す経路構成情報を記憶する記憶部と、
    前記プロセッサから前記複数の入出力装置までの経路構成が前記第1経路構成である状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記プロセッサと前記複数の入出力装置との間の経路を切り替える複数のスイッチを制御することで、前記第1経路構成を前記第2経路構成に切り替える制御部と、
    切り替え後の前記第2経路構成の状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記第1経路構成の状態においてエラーが検出された入出力装置と前記第2経路構成の状態においてエラーが検出された入出力装置とを比較した比較結果に基づいて、前記プロセッサから前記複数の入出力装置までの経路構成に含まれる被疑部品を特定する特定部と、
    を備えることを特徴とする管理装置。
  2. 前記複数のスイッチは、複数の上位スイッチと複数の下位スイッチとを含み、
    前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
    前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
    前記制御部は、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
    前記特定部は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第2下位スイッチに接続されている第2入出力装置である場合、前記複数の上位スイッチのうち、前記第1経路構成の状態において前記第1下位スイッチに接続されている上位スイッチを、前記被疑部品として特定することを特徴とする請求項1記載の管理装置。
  3. 前記制御部は、前記第2経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第2経路構成を、前記被疑部品として特定された上位スイッチを使用しない第3経路構成に切り替えることを特徴とする請求項2記載の管理装置。
  4. 前記複数のスイッチは、複数の上位スイッチと複数の下位スイッチとを含み、
    前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
    前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
    前記制御部は、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
    前記特定部は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記複数の下位スイッチのうち第1下位スイッチに接続されている第1入出力装置であり、かつ、前記第2経路構成の状態においてエラーが検出された入出力装置が、前記第1下位スイッチに接続されている第2入出力装置である場合、前記第1下位スイッチを前記被疑部品として特定することを特徴とする請求項1記載の管理装置。
  5. 前記複数のスイッチは、複数の上位スイッチと複数の下位スイッチとを含み、
    前記複数の上位スイッチ各々は、前記複数の下位スイッチのうちいずれかの下位スイッチに接続されており、
    前記複数の下位スイッチ各々は、前記複数の入出力装置のうち少なくとも1つ以上の入出力装置に接続されており、
    前記制御部は、前記第1経路構成の状態において前記複数の上位スイッチと前記複数の下位スイッチとの間の接続形態を変更することで、前記第1経路構成を前記第2経路構成に切り替え、
    前記特定部は、前記第1経路構成の状態においてエラーが検出された入出力装置が、前記第2経路構成の状態においてエラーが検出された入出力装置と同一である場合、エラーが検出された入出力装置を前記被疑部品として特定することを特徴とする請求項1記載の管理装置。
  6. プロセッサと、
    複数の入出力装置と、
    前記プロセッサと前記複数の入出力装置との間の経路を切り替える複数のスイッチとを備え、
    前記複数のスイッチは、前記プロセッサから前記複数の入出力装置までの経路構成が第1経路構成である状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーを前記プロセッサが検出した場合、前記第1経路構成を第2経路構成に切り替え、切り替え後の前記第2経路構成の状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーを前記プロセッサが検出した場合、前記第1経路構成の状態においてエラーが検出された入出力装置と前記第2経路構成の状態においてエラーが検出された入出力装置とが比較された比較結果に基づいて、前記第2経路構成を第3経路構成に切り替えることを特徴とする情報処理装置。
  7. プロセッサから複数の入出力装置までの経路構成が第1経路構成である状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記プロセッサと前記複数の入出力装置との間の経路を切り替える複数のスイッチを制御することで、前記第1経路構成を第2経路構成に切り替え、
    切り替え後の前記第2経路構成の状態において、前記複数の入出力装置のうちいずれかの入出力装置のエラーが検出された場合、前記第1経路構成の状態においてエラーが検出された入出力装置と前記第2経路構成の状態においてエラーが検出された入出力装置とを比較した比較結果に基づいて、前記プロセッサから前記複数の入出力装置までの経路構成に含まれる被疑部品を特定する、
    処理をコンピュータに実行させるためのプログラム。
JP2018129172A 2018-07-06 2018-07-06 管理装置、情報処理装置、及びプログラム Active JP7142503B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018129172A JP7142503B2 (ja) 2018-07-06 2018-07-06 管理装置、情報処理装置、及びプログラム
US16/453,292 US11169882B2 (en) 2018-07-06 2019-06-26 Identification of a suspect component causing an error in a path configuration from a processor to IO devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018129172A JP7142503B2 (ja) 2018-07-06 2018-07-06 管理装置、情報処理装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2020009113A JP2020009113A (ja) 2020-01-16
JP7142503B2 true JP7142503B2 (ja) 2022-09-27

Family

ID=69101403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018129172A Active JP7142503B2 (ja) 2018-07-06 2018-07-06 管理装置、情報処理装置、及びプログラム

Country Status (2)

Country Link
US (1) US11169882B2 (ja)
JP (1) JP7142503B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11481296B2 (en) * 2018-09-10 2022-10-25 International Business Machines Corporation Detecting configuration errors in multiport I/O cards with simultaneous multi-processing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016081483A (ja) 2014-10-22 2016-05-16 富士通株式会社 分析プログラム、分析装置、及び分析方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392328A (en) * 1993-02-04 1995-02-21 Bell Communications Research, Inc. System and method for automatically detecting root causes of switching connection failures in a telephone network
JP3595033B2 (ja) 1995-07-18 2004-12-02 株式会社日立製作所 高信頼化コンピュータシステム
JPH113293A (ja) * 1997-06-13 1999-01-06 Nec Software Ltd 計算機システム
JP2000148655A (ja) 1998-11-13 2000-05-30 Hitachi Ltd 情報処理システムの制御方法
EP1537701B8 (en) * 2002-09-09 2008-09-10 Cisco Technology, Inc. Root cause correlation in connectionless networks
US20060233204A1 (en) 2005-04-19 2006-10-19 Pomaranski Ken G Redundant I/O interface management
US20070180287A1 (en) * 2006-01-31 2007-08-02 Dell Products L. P. System and method for managing node resets in a cluster
US8159935B1 (en) * 2009-01-12 2012-04-17 Shoretel, Inc. Failover system and method for IP telephony
WO2012073276A1 (en) * 2010-11-30 2012-06-07 Hitachi, Ltd. Storage system using sas bypass expanders
US9354992B2 (en) * 2014-04-25 2016-05-31 Netapp, Inc. Interconnect path failover
EP3136661B1 (en) * 2014-05-09 2019-09-18 Huawei Technologies Co., Ltd. Path switching method and device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016081483A (ja) 2014-10-22 2016-05-16 富士通株式会社 分析プログラム、分析装置、及び分析方法

Also Published As

Publication number Publication date
JP2020009113A (ja) 2020-01-16
US20200012565A1 (en) 2020-01-09
US11169882B2 (en) 2021-11-09

Similar Documents

Publication Publication Date Title
EP3173937B1 (en) Pcie network system with fail-over capability and operation method thereof
US9582448B2 (en) Transmission apparatus and control unit
US10789141B2 (en) Information processing device and information processing method
US9298566B2 (en) Automatic cluster-based failover handling
US9552265B2 (en) Information processing apparatus and storage system
US20160380804A1 (en) Storage control apparatus and storage control method
JP6098778B2 (ja) 冗長化システム、冗長化方法、冗長化システムの可用性向上方法、及びプログラム
US20040148542A1 (en) Method and apparatus for recovering from a failed I/O controller in an information handling system
JP3595033B2 (ja) 高信頼化コンピュータシステム
US10360115B2 (en) Monitoring device, fault-tolerant system, and control method
JP7142503B2 (ja) 管理装置、情報処理装置、及びプログラム
US10216595B2 (en) Information processing apparatus, control method for the information processing apparatus, and recording medium
JP6135403B2 (ja) 情報処理システム、情報処理システムの障害処理方法
JPWO2010100757A1 (ja) 演算処理システム、再同期方法、およびファームプログラム
US20090132866A1 (en) Storage apparatus
Tu et al. Seamless fail-over for PCIe switched networks
US11221926B2 (en) Information processing system and information processing apparatus
JP5511546B2 (ja) フォールトトレラントの計算機システム、複数の物理サーバとストレージ装置とに接続されるスイッチ装置、及び、サーバ同期制御方法
JP2011107858A (ja) 通信インタフェースの種類が異なる複数の入出力装置に複数の計算機が通信可能に接続される計算機システム
JP4165499B2 (ja) コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法
JP4915113B2 (ja) バスシステム、リセットイニシャライズ回路、及びバスシステムにおける障害復旧方法
CN113282231B (zh) 存储装置以及相关闪存控制器
JP5970846B2 (ja) 計算機システム及び計算機システムの制御方法
JP4165423B2 (ja) コアi/oカードを実装したシステムボード
JP6930153B2 (ja) パス切替装置、パス切替方法及びパス切替プログラム、並びに、コンピュータシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210408

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220413

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20220413

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220830

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220913

R150 Certificate of patent or registration of utility model

Ref document number: 7142503

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150