[go: up one dir, main page]

JP5370591B2 - システムおよび障害処理方法 - Google Patents

システムおよび障害処理方法 Download PDF

Info

Publication number
JP5370591B2
JP5370591B2 JP2012531618A JP2012531618A JP5370591B2 JP 5370591 B2 JP5370591 B2 JP 5370591B2 JP 2012531618 A JP2012531618 A JP 2012531618A JP 2012531618 A JP2012531618 A JP 2012531618A JP 5370591 B2 JP5370591 B2 JP 5370591B2
Authority
JP
Japan
Prior art keywords
failure
unit
location
information
processing unit
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
JP2012531618A
Other languages
English (en)
Other versions
JPWO2012029147A1 (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
Publication of JPWO2012029147A1 publication Critical patent/JPWO2012029147A1/ja
Application granted granted Critical
Publication of JP5370591B2 publication Critical patent/JP5370591B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error 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 the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/202Error 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 processing functionality is redundant
    • G06F11/2038Error 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 processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/202Error 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 processing functionality is redundant
    • G06F11/2048Error 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 processing functionality is redundant where the redundant components share neither address space nor persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、システムおよび障害処理方法に関する。
システム内において障害が発生した場合に、システムにそなえられるRAM(Random Access Memory)から障害情報を読み出し、解析を行なう技術が知られている。また、障害情報を解析することで、障害原因箇所を推定する方法(Fault Location)が知られている。
障害原因箇所を推定する方法を、図9を用いて説明する。図9は従来のシステムのハードウェア構成を示す図である。ここで、システム200は、CPU(Central Processing Unit)210,チップセット220,PCI(Peripheral Component Interconnect)-Expressスイッチ(以下、単にスイッチという場合がある)230−235およびPCI-Card240をそなえる。スイッチ230は、スイッチ231およびスイッチ232とPCI-Expressバスを介して通信可能に接続され、スイッチ233は、スイッチ234およびスイッチ235とPCI-Expressバスを介して相互に接続されている。さらに、チップセット220は、スイッチ230およびスイッチ233とPCI-Expressバスを介して通信可能に接続されている。また、スイッチ231,232,234,235のそれぞれに、PCI-Expressバスを介してPCI-Card240が接続されている。
上記のように構成されたシステム200において、例えば、スイッチ232において障害が発生すると、チップセット220がCPU210に対して割り込みを行なうことによって障害の発生を通知する。CPU210は、このチップセット220からの割り込みを受けることで、システム200内で障害が発生したことを検知する。そして、CPU210は、障害が発生したことを検知すると、PCI-Expressバスを介して、チップセット220,スイッチ230−235およびPCI-Card240がそれぞれそなえるレジスタを読み出し、障害の要因を解析し、障害の原因箇所を推定する。
しかしながら、PCI-Expressバスのリンク切れやPCI-Express送受信バッファのハング等の種々の理由によって、レジスタの読み出しができない状態(Master Abort)が発生する場合がある。図10は、レジスタの読み出しができない場合を説明するための図である。
図10に示すように、例えば、チップセット220とスイッチ230との間のPCI-Expressバスがリンク切れを起こしている場合、CPU210は、スイッチ230−232や、スイッチ231,232に接続されているPCI-Card240がそれぞれそなえるレジスタの読み出しができなくなる。
したがって、具体的に障害の原因箇所を推定することができず、例えば、障害を解消するためには、スイッチ230−232およびスイッチ231,232に接続されているPCI-Card240の全ての部品の交換が必要となる。
特開平05−282167号公報
すなわち、Master Abort発生時には、具体的に障害の原因箇所を推定することができないという問題点があった。
本件は、Master Abort発生時においても、高精度に障害の原因箇所を推定することを目的の一つとする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の1つとして位置付けることができる。
本システムは、第1処理部と、第2処理部と、第1処理部と第1の経路を介して接続され、第2処理部と第2の経路を介して接続される装置とをそなえたシステムであって、該第1処理部が、該システムにおいて障害が発生した場合、前記装置が保持する障害情報を、該第1の経路を介して取得する第1取得部と、該第1取得部によって該障害情報を前記装置から取得できない場合に、該障害情報が取得できない状態を示す無応答情報を該第2処理部に通知する第1通知部と、をそなえ、該第2処理部が、該第1通知部から該無応答情報の通知があった場合に、該障害情報を、該第2の経路を介して前記装置から取得する第2取得部と、該第2取得部が取得した障害情報に基づいて、障害原因箇所を推定する第2障害箇所推定部と、該第2障害箇所推定部により推定された障害箇所を、該第1処理部に通知する第2通知部と、をそなえるとともに、さらに、該第1処理部が、該第2障害箇所推定部により推定された障害箇所を使用している主体を特定する特定部と、該特定部により特定された主体を終了させる、終了部と、をそなえる。
また、本障害処理方法は、第1処理部と、第2処理部とをそなえたシステムにおける障害処理方法であって、第1処理部が、該システムにおいて障害が発生した場合、該第1処理部および該第2処理部とそれぞれ第1の経路および第2の経路を介して接続された装置が保持する障害情報を、該第1の経路を介して取得する第1取得ステップと、該第1取得ステップによって障害情報が取得できない場合に、該装置が無応答である旨を示す無応答情報を第1処理部が該第2処理部に通知する第1通知ステップと、該第1通知ステップによって該無応答情報の通知があった場合に、第2処理部が、該第2の経路を介して障害情報を装置から取得する第2取得ステップと、該第2取得ステップによって取得された障害情報に基づいて、第2処理部が障害原因箇所を推定する第2障害箇所推定ステップと、第2処理部が、該第2障害箇所推定ステップにより推定された障害箇所を、該第1処理部に通知する第2通知ステップと、第1処理部が、該第2障害箇所推定ステップにより推定された障害箇所を使用している主体を特定する特定ステップと、該特定ステップにより特定された主体を終了させる、終了ステップと、をそなえる。
本システムおよび障害処理方法によれば、Master Abort発生時においても、高精度に障害の原因箇所を推定することが可能となる。
実施形態の一例にかかるシステムの構成を示す図である。 実施形態の一例にかかるシステムの詳細なハードウェア構成を示す図である。 実施形態の一例にかかるスイッチの構成を示す図である。 実施形態の一例にかかる割当部の動作を説明するための図である。 実施形態の一例にかかる障害検出装置の動作を説明するためのフローチャートである。 実施形態の一例にかかるSMI割り込みを説明するための図である。 実施形態の一例にかかるMCの動作を説明するための図である。 実施形態の一例にかかるシステム障害情報を示す図である。 従来のシステムのハードウェア構成を示す図である。 従来のシステムにおいてレジスタの読み出しができない場合を説明するための図である。
以下、図面を参照して本発明のシステムおよび障害処理方法に係る実施の形態を説明する。
図1は、実施形態の一例に係るシステムの構成を示す図である。図2は、実施形態の一例に係るシステムの詳細なハードウェア構成を示す図である。システム1は、第1記憶部2,第2記憶部3,CPU10,チップセット20,PCI-Expressスイッチ30−32,MC(Micro Controller)40,PCI-Expressバス50−54,I2C(Inter-Integrated Circuit)バス60,複数のPCI-Card80および複数のPCI-Card81をそなえている。ここで、システム1は、例えば、IO(Input/Output)サブシステムである。
CPU10とチップセット20とは、例えばQPI(Quick Path Interconnect)バス55を介して通信可能に接続されている。チップセット20は、PCI-Expressバス50を介してスイッチ30と通信可能に接続されている。また、スイッチ30は、PCI-Expressバス51,52を介して、スイッチ31,32とそれぞれ通信可能に接続されている。さらに、スイッチ31は、複数(図1に示す例では4つ)のPCI-Card80と、それぞれPCI-Expressバス53を介して通信可能に接続されている。また、スイッチ32は、複数(図1に示す例では4つ)のPCI-Card81と、それぞれPCI-Expressバス54を介して通信可能に接続されている。CPU10,チップセット20,PCI-Expressスイッチ30−32およびPCI-Card80,81は、CPU10を最上位、PCI-Card80,81を最下位として、QPIバス55およびPCI-Expressバス50−54(第1の経路の一例)を介して多段に接続されている。
また、スイッチ30−32は、I2Cバス60を介して、MC40と通信可能に接続されている。なお、第1記憶部2は、CPU10と通信可能に接続され、第2記憶部3はMC40と通信可能に接続されている。さらに、MC40とチップセット20とは、LAN(Local Area Network)を介して通信可能に接続されている。
スイッチ30−32のそれぞれは、回線やパケットの交換(スイッチング)機能を持った通信装置である。スイッチ30−32のそれぞれは、例えば、PCI-Expressバスによって接続された複数のポートをそなえ、所定のポートにおいて受信した情報を、任意のポートから出力する。
図3は、本実施形態の一例としてのスイッチ30の構成を示す図である。図3に示すように、スイッチ30は、例えば、複数(図3に示す例では3つ)のポートをそなえ、ポートごとにPCIコンフィグレーションレジスタ(以下、単にコンフィグレーションレジスタという場合がある)33をそなえる。ここで、複数のポートそれぞれは、障害が発生した場合、障害を検出して、コンフィグレーションレジスタ33に障害情報を記録する。より具体的には、コンフィグレーションレジスタ33の一部であるAER(Advance Error Reporting)レジスタに障害情報を記録する。ここで、障害情報とは、障害の内容を示す情報であり、例えば、ポートに接続されているPCI-Expressバスのリンク切れが発生した場合には、AERレジスタに、Surprise Down Errorが記録される。なお、このAERレジスタに記録される障害情報としては、既知の情報を使用することができる。
また、複数のポートそれぞれは、障害を検出した場合に、Fatal-Error Messageパケットをチップセット20のIOハブ21(後述)宛てに送信する。なお、このFatal-Error Messageパケットは、PCI-Expressの規格書に定義されており、その詳細な説明は省略する。
スイッチ31,32についても、スイッチ30と同様の構成を有するものであり、その詳細な説明は省略する。なお、図1に示す例では、スイッチ31,32は、5つ以上のポートをそれぞれそなえる。スイッチ31がそなえる複数のポートそれぞれは、障害を検出した場合に、Fatal-Error Messageパケットを、スイッチ30経由で、チップセット20のIOハブ21宛てに送信する。具体的には、スイッチ31がそなえる複数のポートそれぞれは、障害を検出した場合、Fatal-Error Messageパケットをスイッチ30送信し、Fatal-Error Messageパケット受信したスイッチ30がIOハブ21に受信したFatal-Error Messageパケットを送信する。
同様に、スイッチ32がそなえる複数のポートそれぞれは、障害を検出した場合に、Fatal-Error Messageパケットを、スイッチ30経由で、チップセット20のIOハブ21宛てに送信する。具体的には、スイッチ32がそなえる複数のポートそれぞれは、障害を検出した場合、Fatal-Error Messageパケットをスイッチ30送信し、Fatal-Error Messageパケット受信したスイッチ30がIOハブ21に受信したFatal-Error Messageパケットを送信する。
なお、例えば、ポートがそなえる処理回路が、所定のファームウェアを実行することで、障害を検出する機能や、AERレジスタに障害情報を記録する機能や、Fatal-Error Messageパケットを送信する機能を実現する。
チップセット20は、CPU10とスイッチ30とを接続する回路であり、例えば、QPIをPCI-Expressに変換する処理を行なう。具体的には、図2に示すように、チップセット20は、IOハブ21,サウスブリッジ22およびBMC(Baseboard Management Controller)23をそなえる。なお、IOハブ21とサウスブリッジ22とは、例えば、ESI(Enterprise Southbridge Interface)バスを介して相互に通信可能に接続される。さらに、サウスブリッジ22とBMC23とは、例えば、LPC(Low Pin Count)バスを介して相互に通信可能に接続される。また、BMC23は、LANを介してMC40と相互に通信可能に接続されている。さらに、IOハブ21は、I2C60を介してBMC23と相互に通信可能に接続されている。
IOハブ21は、QPIをPCI-Expressに変換するLSI(Large Scale Integrated)である。また、IOハブ21は、Fatal-Error Messageパケットを下位の装置、つまりスイッチ30やIOハブ21自身から受信するとCPU10に対して、例えば、SMI(System Management Interrupt)割り込みを発行する。なお、IOハブ21は、Root Complexをそなえる。Root ComplexはCPU10をスイッチ30等のIOデバイスと接続するためのチップセットであり、QPIをPCI-Expressに変換する。このRoot Complexは、少なくとも1以上のポートをそなえるとともに、スイッチ30−32と同様にコンフィグレーションレジスタ33をそなえる。なお、Root Complexは、PCI-Expressの最も上位に位置する装置である。
IOハブ21がそなえるポートは、障害が発生した場合、障害を検出して、コンフィグレーションレジスタ33に障害情報を記録する。より具体的には、コンフィグレーションレジスタ33の一部であるAERレジスタに障害情報を記録する。IOハブ21がそなえるポートは、障害を検出した場合に、Fatal-Error MessageパケットをIOハブ21宛てに送信する。IOハブ21は、自己の障害ポートからFatal-Error Messageパケットを受信すると、スイッチ30等からFatal-Error Messageパケットを受信した時と同様に、SMI割り込みをCPU10に対して発行する。
なお、例えば、IOハブ21がそなえるポートの処理回路が、所定のファームウェアを実行することで、障害を検出する機能や、AERレジスタに障害情報を記録する機能や、Fatal-Error Messageパケットを送信する機能を実現する。
サウスブリッジ22は、例えば、LPCバス上のデバイスを制御する。BMC23は、例えば、CPU10の状態を監視するなど、システム1におけるハードウェアエラーを監視する。
PCI-Card80,81のそれぞれは、PCIの規格に従って作成された種々の機能を提供する拡張カードであり、例えば、ネットワークカードやサウンドカードである。また、PCI-Card80,81のそれぞれは、少なくとも1以上のポートをそなえるとともに、スイッチ30−32と同様にコンフィグレーションレジスタ33を(ポート毎に)そなえる。PCI-Card80,81のそれぞれがそなえるポートは、障害が発生した場合、障害を検出して、コンフィグレーションレジスタ33に障害情報を記録する。より具体的には、コンフィグレーションレジスタ33の一部であるAERレジスタに障害情報を記録する。PCI-Card80,81のそれぞれがそなえるポートは、障害を検出した場合に、Fatal-Error Messageパケットを、接続されているスイッチ31/32およびスイッチ30を介して、IOハブ21宛てに送信する。具体的には、PCI-Card80がそなえるポートは、障害を検出した場合に、Fatal-Error Messageパケットを、接続されているスイッチ32に送信する。そして、スイッチ32は受信したFatal-Error Messageパケットをスイッチ30に転送し、スイッチ30は、IOハブ21にスイッチ32から転送されたFatal-Error MessageパケットをIOハブ21に更に転送する。また、PCI-Card81がそなえるポートは、障害を検出した場合に、Fatal-Error Messageパケットを、接続されているスイッチ31に送信する。そして、スイッチ31は受信したFatal-Error Messageパケットをスイッチ30に転送し、スイッチ30は、IOハブ21にスイッチ32から転送されたFatal-Error MessageパケットをIOハブ21に更に転送する。
なお、例えば、PCI-Card80,81のそれぞれのポートがそなえる処理回路が、所定のファームウェアを実行することで、障害を検出する機能や、AERレジスタに障害情報を記録する機能や、Fatal-Error Messageパケットを送信する機能を実現する。
第1記憶部2は、例えば、ROM(Read Only Memory)であり、各種の情報を記憶する。具体的には、第1記憶部2はBIOSを記憶する。
第2記憶部3は、例えば、ROMであり、各種の情報を記憶する。具体的には、第2記憶部3は、システム管理ファームを記憶する。
CPU10は、例えば、第1記憶部2に記憶されたBIOSや図示しない補助記憶装置(内蔵HDD(Hard Disk Drive)や外付けのストレージシステム)に記憶されたOSや各種アプリケーションプログラムを実行することにより種々の演算や制御を行ない、各種機能を実現する処理装置である。CPU10は、第1処理部として機能する。
例えば、CPU10は、BIOSを実行することにより、図1に示すように、バス番号割当部11,第1取得部12,第1通知部13,第1障害箇所推定部14および依頼部15として機能する。また、例えば、CPU10は、OSを実行することにより、図1に示すように、判断部16,終了部17およびリセット指示部18として機能する。なお、第1取得部12,第1通知部13,第1障害箇所推定部14および依頼部15としての機能のうち1以上の機能をOSに持たせてもよいし、判断部16,終了部17およびリセット指示部18として機能のうち1以上の機能をBIOSに持たせてもよい。
バス番号割当部11は、例えば、システム1の起動時に、システム1がそなえる、IOハブ21内部のPCI-Expressバス(図示省略),PCI-Expressバス50−54および各スイッチ30−32内のPCI-Expressバスに対して、それぞれを識別するためのバス番号を割り当てる。バス番号の割当はPCIのバス割り当て規則に従い行なわれる。ここで、IOハブ21内部のPCI-Expressバス,QPIバス55,PCI-Expressバス50−54および各スイッチ30−32内のPCI-Expressバスは、第1の経路の一例に相当する。すなわち、バス番号割当部11は、第1の経路に対してバス番号を割り当てる。
図4は、システム1に対して、バス番号割当部11によってバス番号が割り当てられた状態の一例を示す図である。図4中、丸付き数字はバス番号を表す。PCI-Expressバス50,52,51に対して、バス番号割当部11によってそれぞれバス番号1,3,9が割り当てられ、4本のPCI-Expressバス54には、それぞれバス番号5−8が、4本のPCI-Expressバス53には、それぞれバス番号11−14がバス番号割当部11によって割り当てられる。さらに、スイッチ30,32,31のポートを接続するPCI-Expressバスには、それぞれバス番号2,4,10がバス番号割当部11によって割り当てられる。また、IOハブ内部のPCI-Expressバスには、バス番号割当部11によってバス番号0が割り当てられる。
第1取得部12は、IOハブ21からSMI(System Management Interrupt)割り込みを受けた場合、システム1内にそなえられた各AERレジスタから障害情報をそれぞれ読み出す。第1取得部12によるAERレジスタの読み出しは、CPU10とチップセット20とを接続するQPIバス55,PCI-Expressバス50−54およびスイッチ30−32のポートを接続するPCI-Expressバスを介して行なわれる。ここで、第1取得部12は、例えば、IOハブ21,スイッチ30−32およびPCI-Card80,81のコンフィグレーションレジスタ33のAERレジスタの値(内容)を読み出し、取得する。すなわち、第1取得部12は、障害情報を、第1の経路を介して取得する第1取得部として機能する。
なお、第1取得部12が所定時間AERレジスタの内容を読み出せない場合には、IOハブ21は、Master Abortが発生している旨を示す情報をCPU10に対し出力する。言い換えれば、Master Abortが発生した場合には、第1取得部12は、IOハブ21からMaster Abortが発生していることを示す情報を取得して、Master Abortの発生を検知する。なお、Master Abortとは、例えば、PCI-Expressバスに接続された装置の不具合やPCI-Expressバスのリンク切れなどの様々な障害や、PCI-Expressバスに装置が未実装のため、コンフィグレーションレジスタ33の読み出しができない状態を指す。
ここで、Master Abortが発生している旨を示す情報とは、例えば、全て”1”である4byteのデータである。なお、IOハブ21は、例えば、自身がそなえるタイマを用いることで所定時間が経過したか否かを判断することができる。
Master Abortが発生した場合には、第1取得部12は、AERレジスタの読み出しを中止するとともに、Master Abortが発生したバス番号を、例えば、CPU10がそなえるレジスタに記録する。ここで、Master Abortが発生したバス番号とは、第1取得部12がMaster Abortを検知する際に、第1取得部12がAERレジスタの読み出しに使用するバス番号である。言い換えれば、Master Abortが発生したバス番号とは、第1取得部12が情報を読み出すことができなかったAERレジスタの上位側に接続されたバスの番号である。
第1通知部13は、Master Abortが発生している旨を示す情報を第1取得部12が取得した場合、Master Abortが発生した旨(無応答情報)およびMaster Abortが発生した場所を示す情報をMC40(第2処理部の一例)に通知する。具体的には、第1通知部13は、例えば、Master Abortが発生したことを示すフラグおよびMaster Abortが発生したバス番号(位置情報)をIOハブ21,ESIハブ,サウスブリッジ22,LPCハブおよびBMC23を介してMC40に通知する。この第1通知部13からMC40への通知は、例えば、IPMI(Intelligent Platform Management Interface)通信を用いて行なわれる。
第1障害箇所推定部14は、例えば、第1取得部12が取得したAERレジスタの内容に基づいて、障害原因箇所を推定する。具体的には、第1障害箇所推定部14は、AERレジスタから障害が発生した旨を示す情報、例えば、Surprise Down Errorを第1取得部12が取得した場合には、Surprise Down Errorが記録されていたシステム1内の箇所(エラー情報を格納していたレジスタと対応)を障害原因箇所として推定する。さらに、第1障害箇所推定部14は、Master Abortの発生により、第1取得部12がAERレジスタの内容を取得できなかった装置も障害原因箇所として推定する。
なお、第1障害箇所推定部14は、既知の種々の手法を用いて実現可能であり、その詳細な説明は省略する。
依頼部15は、例えば、MC40に対して、後述するシステム障害情報の生成を依頼する。具体的には、依頼部15は、MC40に対して、第1障害箇所推定部14が推定した障害原因箇所および当該障害原因箇所から第1取得部12が取得したAERレジスタの内容を通知する。依頼部15は、障害箇所とAERレジスタ内容との通知と同時または略同時に、MC40に対して後述するシステム障害情報の生成を依頼する。すなわち、依頼部15は、第1障害箇所推定部1が推定した障害原因箇所および当該障害原因箇所のAERレジスタの内容を、MC40に対して通知する第3通知部として機能する。
なお、依頼部15による通知および依頼は、例えば、IOハブ21,ESIハブ,サウスブリッジ22,LPCハブおよびBMC23を介して行なわれる。また、この依頼部15からMC40への通知および依頼は、例えば、IPMI通信を用いて行なわれる
さらに、依頼部15は、例えば、MC40に対してシステム障害情報の生成を依頼するとともに、CPU10に対して、NMI(Non-Maskable Interrupt)割り込みを行なう。ここで、NMI割り込みとは、ソフトウェアから禁止不可能な割り込みである。
判断部16は、例えば、NMI割り込みおよび後述する第2通知部43からの通知を受けると、第2障害箇所推定部42が推定する障害原因箇所に基づいて、障害箇所を切り離すことが可能か否かを判断する。また、Master Abortが発生しなかった場合には、判断部16は、第1障害箇所推定部14が推定した障害原因箇所に基づいて、障害箇所を切り離す(同上)ことが可能か否かを判断する。ここで、障害箇所を切り離すとは、システム1の動作を継続させたまま(システム1のリセットを行なうことなく)、アプリケーション等が障害原因箇所を使用しない状態にすることをいう。
具体的には、例えば、判断部16は、第2障害箇所推定部42または第1障害箇所推定部14が推定した障害原因箇所を使用するアプリケーション等の主体を特定する。そして、判断部16は、例えば、システム1において動作する全てのアプリケーション等の主体が第2障害箇所推定部42または第1障害箇所推定部14によって推定された障害原因箇所を使用していなければ、障害箇所を切り離すことが可能であると判断する。なお、障害箇所を切り離すことが可能と判断された場合には、後述する終了部17によって、例えば、第2障害箇所推定部42または第1障害箇所推定部14によって推定された障害原因箇所を使用するアプリケーションや仮想マシンが終了させられる。言い換えれば、判断部16は、システム1において動作する全ての主体のうち一部のみが第2障害箇所推定部42または第1障害箇所推定部14によって推定された障害原因箇所を使用している場合には、障害箇所を切り離すことが可能であると判断する。
一方、システム1において動作する全てのアプリケーション等の主体が第2障害箇所推定部42または第1障害箇所推定部14によって推定される障害原因箇所を使用していれば、障害箇所を切り離すことが不可能と判断する。
ここで、「主体」とは、例えば、アプリケーションや仮想マシンや、これらのアプリケーションや仮想マシンが用いているハードウェア資源である。すなわち、判断部16は、障害箇所を使用している主体を特定する特定部として機能する。
なお、OSは、システム1内で動作しているアプリケーションや仮想マシン等を把握しているため、第2障害箇所推定部42または第1障害箇所推定部14によって推定された障害原因箇所を使用するアプリケーションや仮想マシン等を、このOSの機能を用いて特定することができる。
終了部17は、判断部16によって、障害箇所を切り離すことが可能と判断された場合に、例えば、第2障害箇所推定部42または第1障害箇所推定部14によって推定された障害原因箇所を使用するアプリケーションや仮想マシンを終了させる。
例えば、図1において、PCI-Card80をアプリケーションAが使用しており、PCI-Card81をアプリケーションBが使用しているときに、PCI-Card80が接続されたスイッチ31が故障した場合には、終了部17はアプリケーションAを終了させる。これによって、システム1を停止させることなく、アプリケーションBは動作可能となる。
リセット指示部18は、例えば、MC40に対して、システム1のリセットを行なうよう指示する。例えば、具体的には、リセット指示部18はMC40がそなえるレジスタにリセットフラグを書き込むことでリセットの指示を行なう。
MC40は、例えば、第2記憶部3に記憶されたシステム管理ファームを実行することにより種々の演算や制御を行ない、これにより、各種機能を実現する処理装置である。
例えば、MC40は、システム管理ファームを実行することにより、第2取得部41,第2障害箇所推定部42,第2通知部43,生成部44およびリセット部45として機能する。
第2取得部41は、例えば、第1通知部13から、Master Abortが発生した旨およびMaster Abortが発生したバス番号の通知を受けると、I2Cバス60(第2の経路の一例)を介して、AERレジスタの内容を読み出す。具体的には、第2取得部41は、IOハブ21,スイッチ30−32およびPCI-Card80,81のそれぞれがそなえるコンフィグレーションレジスタ33のAERレジスタのうち、第1取得部12が取得できなかったAERレジスタの内容を読み出す。すなわち、第2取得部41は、障害情報を、第2の経路を介して取得する第2取得部として機能する。
具体的には、第2取得部41は、Master Abortが発生したバス番号より下位にあるAERレジスタを読み出す。
ここで、割当部11によるバス番号の割当は、PCIのバス割り当て規則に従うため、MC40は、どのようにバス番号が割当てられるかを把握することができる。さらに、I2Cアドレスはシステム1内の装置に固定的に割当てられ、MC40は、システム1内の装置の位置を把握しているため、MC40は、システム1内の装置の位置と、I2Cアドレスとの対応付けを把握している。したがって、第2取得部41は、バス番号とI2Cアドレスとを対応付けることが可能であり、バス番号に基づいて、システム1内の装置の位置を特定することができる。すなわち、第2取得部41は、バス番号に基づいて、読み出すべきAERレジスタを特定することができる。
第2障害箇所推定部42は、例えば、第2取得部41が取得したAERレジスタの内容に基づいて、障害原因箇所を推定する。具体的には、第2障害箇所推定部42は、AERレジスタから、障害が発生した旨を示す情報、例えば、IOハブ21,スイッチ30−32およびPCI-Card80,81等の各装置の内部での訂正不可能なエラーを示すInternal Uncorrectable Errorを第2取得部41が取得した場合には、Internal Uncorrectable Errorが記録されていたシステム1内の箇所を障害原因箇所として推定する。
なお、第2障害箇所推定部42は既知の種々の手法を用いて実現可能であり、その詳細な説明は省略する。
第2通知部43は、例えば、第2障害箇所推定部42によって推定された障害原因箇所および/または第2障害箇所推定部42によって推定された障害原因箇所のAERレジスタの内容を、CPU10に通知する。この第2通知部43からCPU10への通知は、例えば、IPMI通信を用いて行なわれる。
生成部44は、例えば、システム障害情報を生成し、第2記憶部3に記録する。ここで、システム障害情報とは、システム1の管理者が参照することで、障害原因箇所を把握できる情報であり、少なくとも障害原因箇所を示す情報を含む。具体的には、生成部44は、第1障害箇所推定部14,第2障害箇所推定部42のそれぞれにより推定された障害原因箇所と、これらの障害原因箇所から取得した障害情報と、Master Abortが発生した箇所とを組み合わせてシステム障害情報を生成する。なお、第1障害箇所推定部14により推定された障害原因箇所、および、この障害原因箇所から取得した障害情報は、依頼部15から生成部44に通知され、Master Abortが発生した箇所を示すバス番号は、第1通知部13により生成部44に通知される。
なお、生成部44は、第2障害箇所推定部42により推定された障害原因箇所、および、この障害原因箇所から取得した障害情報のみに基づいてシステム障害情報を生成してもよい。
また、生成部44は、Master Abortが発生しなかった場合には、例えば、依頼部15から通知される情報に基づいて、システム障害情報を生成する。
リセット部45は、例えば、リセット指示部18からの指示を受けると、システム1をリセットする。
なお、上述した判断部16,終了部17,リセット指示部18としての機能を実現するためのプログラム(OS)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
また、BIOSは、第1記憶部2中に、工場出荷時に書き込まれて製品出荷されることとしてもよい。さらに、システム管理ファームも、第2記憶部3中に、工場出荷時に書き込まれて製品出荷されることとしてもよい。
バス番号割当部11,第1取得部12,第1通知部13,第1障害箇所推定部14,依頼部15,判断部16,終了部17,リセット指示部18としての機能を実現する際には、内部記憶装置(本実施形態では第1記憶部2等)に格納されたプログラム(BIOS)と補助記憶装置(内蔵HDDや外付けストレージシステム等)に格納されたプログラム(OS)がコンピュータのマイクロプロセッサによって実行される。このとき、補助記憶装置に格納されたプログラムは、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
さらに、第2取得部41,第2障害箇所推定部42,第2通知部43,生成部44およびリセット部45としての機能を実現する際には、内部記憶装置(本実施形態では第2記憶部3等)に格納されたプログラムがコンピュータのマイクロプロセッサによって実行される。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、システム1がCPU10をそなえたコンピュータとしての機能を有するとともに、システム1がMC40をそなえたコンピュータとしての機能を有しているのである。
図5は、上述の如く構成された、実施形態の一例としてのシステム1の動作を示すフローチャートである。
まず、システム1内において何らかのエラーが生じると、エラーが生じた装置(例えば、スイッチ32)が、Fatal-Error MessageパケットをIOハブ21宛てに送信する。そして、IOハブ21は、Fatal-Error Messageパケット受信すると、CPU10に対してSMI割り込みを発行する。
CPU10がSMIを検出すると(ステップA1)、第1取得部12は、QPIバス55,PCI-Expressバス50−54等を介して、システム1内の各装置がそなえるコンフィグレーションレジスタ33のAERレジスタの内容を読み出す(ステップA3)。第1取得部12がAERレジスタの読み出し動作を行なうごとに、第1取得部12は、Master Abortが発生している旨を示す情報を取得したか否かにより、Master Abortが発生しているか否かを判断する(ステップA4)。Master Abortが発生していないと判断された場合(ステップA4のNoルート参照)、再びステップA2に戻る(ステップA5)これらのステップA3およびステップA4の処理が、Master Abortが発生していないと判断される限り(ステップA4のNoルート参照)、システム1内のコンフィグレーションレジスタ33の数(n)だけ繰り返し行なわれる(ステップA2〜A5参照)。但し、第1取得部12がMaster Abortが発生している旨を示す情報を取得した場合(ステップA4のYesルート参照)には、第1取得部12は、AERレジスタの読み出しを中止し、Master Abortが発生しているバス番号を、例えば、CPU10がそなえるレジスタに格納する。そして、第1通知部13は、Master Abortが発生した旨およびMaster Abortが発生したバス番号を、例えば、IPMI通信によってMC40に通知する(ステップA6)。また、第1障害箇所推定部14は、ステップA3で取得したAERレジスタの内容に基づいて、障害原因箇所の推定を行なう(ステップA7)。
次に、依頼部15が、第1障害箇所推定部14により推定された障害原因箇所、および、第1障害箇所推定部14により推定された障害原因箇所から第1取得部12が取得したAERレジスタの内容を、例えば、IPMI通信によってMC40に通知する。依頼部15は、この通知と同時に、システム障害情報の生成をMC40に対して依頼する(ステップA8)。
一方、ステップA6にて、Master Abortが発生した旨およびMaster Abortが発生しているバス番号が通知されたMC40の第2取得部41が、I2Cバス60を用いて、Master Abortが発生したバス番号より下位にあるAERレジスタを読み出す(ステップA10)。このステップA9の処理が、Master Abortが発生したバス番号より下位にあるコンフィグレーションレジスタ33の数(m)だけ繰り返し行なわれる(ステップA9〜A11参照)。第2取得部41がMaster Abortが発生したバス番号より下位にある全ての装置のAERレジスタを読み出すと、第2障害箇所推定部42は、読み出されたAERレジスタの内容に基づいて、障害原因箇所を推定する(ステップA12)。次に、生成部44は、システム障害情報を生成する(ステップA13)。具体的には、ステップA6において第1通知部13から通知された情報と、ステップA8において依頼部15から通知された情報と、ステップA12において推定した障害箇所にかかるAERレジスタの内容とに基づいて、生成部44はシステム障害情報を生成し、例えば、第2記憶部3に記録する。また、MC40は、生成部44が生成したシステム障害情報を、図示しない表示部に表示することもできる。
第2通知部43は、第2障害箇所推定部42によって推定された障害原因箇所を、例えば、IPMI通信を用いてCPU10に通知する(ステップA14)。判断部16は、第2通知部43によって通知された第2障害箇所推定部42によって推定された障害原因箇所に基づいて、障害箇所を切り離すことが可能か否かを判断する(ステップA15)。
障害箇所を切り離すことが可能ならば(ステップA15のYesルート参照)、終了部17は、判断部16によって特定された、第2障害箇所推定部42によって推定された障害箇所が使用するアプリケーションや仮想マシンを終了させる(ステップA16)。なお、障害箇所を切り離すことが可能でない場合には(ステップA15のNoルート参照)、リセット指示部18は、例えば、MC40に対して、システム1のリセットを行なうよう指示し、リセット部45は、システム1のリセットを行なう(ステップA17)。
なお、第1取得部12がMaster Abortが発生している旨を示す情報を取得しなかった場合(ステップA4のNoルート参照)には、上述したステップA7,A8の処理が行なわれた後、判断部16によって、第1障害箇所推定部14により推定された障害原因箇所に基づいて、障害箇所を切り離すことが可能か否かが判断される(ステップA15)。そして、障害箇所を切り離すことが可能ならば(ステップA15のYesルート参照)、終了部17は、判断部16によって特定された第1障害箇所推定部14により推定された障害箇所が使用するアプリケーションや仮想マシンを終了させる(ステップA16)。なお、障害箇所を切り離すことが可能でない場合には(ステップA15のNoルート参照)、上述のステップA17の処理が行なわれる。また、Master Abortが発生しなかった場合、ステップA8において依頼部15から通知された情報に基づいて、生成部44はステップA13においてシステム障害情報を生成し、例えば、第2記憶部3に記録する。なお、Master Abortが発生しなかった場合、ステップA14の処理は行なわれない。
次に、一例として、システム1において、スイッチ32の内部エラーが原因で、スイッチ30とスイッチ32との間のPCI-Expressバス52のリンク切れが発生した場合の動作について説明する。なお、前提として、バス番号割当部11によって、バス番号が割り当てられているものとする。
図6は、IOハブ21が、CPU10に対してSMI割り込みを発生することを説明するための図である。なお、図6中、スイッチ31については、図示を省略している。
図6に示すように、スイッチ30とスイッチ32との間のPCI-Expressバス52のリンク切れが発生すると、スイッチ30のport1は、PCI-Expressバス52のリンク切れを検出し、コンフィグレーションレジスタ33のAERレジスタに、例えば、Surprise Down Errorを記録する。さらに、スイッチ30のport1は、Fatal-Error MessageパケットをIOハブ21宛てに送信する。Fatal-Error Messageパケットを受信したIOハブ21は、CPU10に対してSMI割り込みを行なう。CPU10がSMI割り込みを検出することで、第1取得部12が起動する。
第1取得部12は、IOハブ21,スイッチ30,31およびPCI-Card80内のAERレジスタを読み出すことはできる。しかし、スイッチ30とスイッチ32との間のPCI-Expressバス52のリンク切れが発生しているため、スイッチ32およびスイッチ32の下位側にあるPCI-Card81内のAERレジスタを読み出すことはできない。すなわち、PCI-Expressバス52を介して、スイッチ32内のAERレジスタを読み出そうとする際に、第1取得部12は、Master Abortが発生していることを示す情報を取得する。そして、第1取得部12は、Master Abortが発生したバス番号として、バス番号3をCPU10がそなえるレジスタに記録する。
次に、第1通知部13が、Master Abortが発生している旨およびバス番号3をMC40に対して通知する。
また、第1取得部12はAERレジスタの読み出しを中止し、第1障害箇所推定部14は、第1取得部12が取得したAERレジスタの内容に基づいて、障害原因箇所の推定を行なう。ここでは、スイッチ30のport1に対応するAERレジスタに記録されているSurprise Down Errorに基づいて、スイッチ30のport1およびスイッチ30の下位に接続されているスイッチ32およびPCI-Card81を障害原因箇所として推定する。次に、依頼部15が、スイッチ30のAERレジスタの内容、および、障害原因箇所としてスイッチ30,スイッチ32およびPCI-Card81をMC40に通知する。なお、依頼部15は、この通知と同時に、システム障害情報の生成をMC40に対して依頼する。また、依頼部15は、MC40に対して、第1障害箇所推定部14が障害原因箇所であると推定した箇所のうち、最上位の箇所のみを通知することとしてもよい。すなわち、依頼部15は、MC40に対して、障害原因箇所としてスイッチ30およびスイッチ30のAERレジスタの内容のみを通知することとしてもよい。
一方、第1通知部13から通知を受け取ったMC40では、第2取得部41が、バス番号に基づいて、バス番号3の下位に接続されている装置のAERレジスタを読み出す。ここでは、スイッチ32内のAERレジスタおよびPCI-Card81内のAERレジスタを読み出す。
ここで、図7に示すように、スイッチ32のport2に対応するコンフィグレーションレジスタ33のAERレジスタに、例えば、Internal Uncorrectable Errorが記録されている場合について考えると、第2取得部41が、このAERレジスタの内容を読み出す。そして、第2障害箇所推定部42が、この第2取得部41に読み出されたAERレジスタの内容に基づいて、障害原因箇所をスイッチ32のport2であると推定する。
そして、生成部44は、例えば、図8に示すようなシステム障害情報を生成し、第2記憶部3に記録する。図8に例示するシステム障害情報は、障害原因箇所(Source)に対して、障害の内容(Description)および障害原因箇所が属するユニット(Unit)が対応付けられている。さらに、図8に例示するシステム障害情報は、障害原因箇所(Source)に対して、第1取得部12または第2取得部41が障害の内容を取得した日時(Date/Time)および障害であることを示す情報(Severity),が対応付けられている。
具体的には、第1障害箇所推定部14によって障害原因箇所として推定された箇所のうち、最上位の箇所であるスイッチ30のport1に対して、スイッチ30のport1のAERレジスタの内容が対応付けられている。さらに、図8に示すシステム障害情報は、スイッチ30のport1に対して、スイッチ30のport1の属するユニットと、AERレジスタが第1取得部12に取得された日時と、Severityとが対応付けられている。スイッチ30のport1の属するユニットと、AERレジスタが第1取得部12に取得された日時と、Severityとは、第1取得部12より生成される情報であり、依頼部15によりMC40に対して通知される。
さらに、図8に示すシステム障害情報は、第1通知部13によって通知されたMaster Abortが発生したバス番号に基づいて求められたスイッチ32のport0に対して、第1通知部13によって通知されたMaster Abortである旨が対応付けられている。また、図8に示すシステム障害情報は、スイッチ32のport0に対して、スイッチ32のport0の属するユニットと、第1取得部12がMaster Abortが発生していることを示す情報を取得した日時と、Severityとが対応付けられている。スイッチ32のport0の属するユニットと、第1取得部12がMaster Abortが発生していることを示す情報を取得した日時と、Severityとは、第1取得部12より生成される情報であり、第1通知部13によりMC40に対して通知される。
さらに、図8に示すシステム障害情報は、第2障害箇所推定部42によって障害原因箇所として推定されたスイッチ32のport2に対して、スイッチ32のport2のAERレジスタの内容が対応付けられている。さらに、図8に示すシステム障害情報は、スイッチ32のport2に対して、スイッチ32のport2の属するユニットと、AERレジスタが第2取得部41に取得された日時と、Severityとが対応付けられている。スイッチ32のport2の属するユニットと、AERレジスタが第2取得部4に取得された日時と、Severityとは、第2取得部4より生成される情報である。
また、第2通知部43は、第2障害箇所推定部42によって推定された障害原因箇所であるスイッチ32のport2およびこの障害箇所のAERレジスタの内容であるInternal Uncorrectable ErrorをCPU10に通知する。判断部16が、スイッチ32のport2のInternal Uncorrectable Errorによる障害箇所を切り離すことが可能ではないと判断する場合には、リセット指示部18は、例えば、MC40に対して、システム1のリセットを行なうよう指示する。そして、リセット部45は、システム1のリセットを行なう。
一方、判断部16は、スイッチ32のport2のInternal Uncorrectable Errorによる障害箇所を切り離すことが可能であると判断する場合には、終了部17が、第2障害箇所推定部42によって推定された障害箇所を使用するアプリケーションや仮想マシン等を終了させる。例えば、スイッチ32の下位に接続されている全てのPCI-Card81を、アプリケーションBが使用していると判断部16により特定された場合には、終了部17が、アプリケーションBを終了させる。
このように、実施形態の一例にかかるシステム1によれば、Master Abort発生時においても、確実かつ高精度に障害の原因箇所を推定することができる。
さらに、判断部16が、第2障害箇所推定部42によって推定された障害原因箇所に基づいて、障害箇所を切り離すことが可能か否かを判断するため、Master Abort発生時においても、システム1を、できるだけリセットを行なわずに運用することができる。
また、システム1の管理者は、生成部44によって生成されたシステム障害情報を参照することで、容易に障害の要因と、この要因によって発生した副次的な障害を判断することができる。
なお、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、本実施形態の一例においては、スイッチ30は、3つのポートをそなえるが、これに限定されるものではなく、スイッチ30は、任意のポート数をそなえる。スイッチ31,32についてもスイッチ30と同様に本実施形態の一例に限定されるものではなく、任意のポート数をそなえる。
また、本実施形態の一例では、PCI-Expressについて記載しているが、これに限定されるものではなく、PCIやPCI-Xに対しても適用可能である。
さらに、本実施形態の一例では、システム1は、3つのスイッチ30−32をそなえているが、これに限定されるものではない。例えば、システム1は、2以下または4以上のスイッチをそなえてもよい。
また、本実施形態の一例では、システム1は、8つのPCI-Card80,81をそなえているがこれに限定されるものではない。例えば、システム1は、7以下または9以上PCI-Cardをそなえてもよい。
さらに、例えば、本実施形態の一例においては、第1記憶部2は、CPU10に接続されているが、これに限定されるものではない。例えば、第1記憶部2は、IOハブ21に接続されていてもよい。また、第1記憶部がCPU10に接続されている場合に、IOハブ21に接続された他の記憶部をそなえ、この他の記憶部にBIOSを記憶してもよい。
また、本実施形態の一例においては、Master Abort発生しているか否かに関わらず、判断部16が、システム1から障害箇所を切り離すことが可能か否かを判断しているが、これに限定されるものではない。例えば、Master Abort発生しなかった場合のみ、判断部16は、システム1から障害箇所を切り離すことが可能か否かを判断することとしてもよく、この場合、第2通知部43は、CPU10に対して情報を通知しない。
さらに、本実施形態の一例においては、判断部16は、第2障害箇所推定部42または第1障害箇所推定部14によって推定される障害原因箇所に基づいて、障害箇所を切り離すことが可能か否かを判断しているが、これに限定されるものではない。例えば、第2障害箇所推定部42または第1障害箇所推定部14によって推定される障害原因箇所と当該障害原因箇所のAERレジスタの内容とに基づいて、障害箇所を切り離すことが可能か否かを判断してもよい。この場合、システム1は、例えば、切り離すことが可能な障害箇所か否か基準となる情報を、第1記憶部2に予めそなえている。そして、判断部16は、例えば、この情報と、第2障害箇所推定部42または第1障害箇所推定部14によって推定された障害原因箇所および当該箇所のAERレジスタの内容とを比較することで、障害箇所を切り離すことが可能か否かを判断する。第1障害箇所推定部14によって推定された障害原因箇所のAERレジスタの内容についても同様である。また、同様に、第2障害箇所推定部42または第1障害箇所推定部14によって推定される障害原因箇所のAERレジスタの内容に基づいて、障害箇所を切り離すことが可能か否かを判断してもよい。
上述した開示により本実施形態を当業者によって実施・製造することが可能である。
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
第1処理部と、第2処理部と、第1処理部と第1の経路を介して接続され、第2処理部と第2の経路を介して接続される装置とをそなえたシステムであって、
該第1処理部が、
該システムにおいて障害が発生した場合、前記装置が保持する障害情報を、該第1の経路を介して取得する第1取得部と、
該第1取得部によって該障害情報を前記装置から取得できない場合に、該障害情報が取得できない状態を示す無応答情報を該第2処理部に通知する第1通知部と、をそなえ、
該第2処理部が、
該第1通知部から該無応答情報の通知があった場合に、該障害情報を、該第2の経路を介して前記装置から取得する第2取得部と、
該第2取得部が取得した障害情報に基づいて、障害原因箇所を推定する第2障害箇所推定部と、
該第2障害箇所推定部により推定された障害箇所を、該第1処理部に通知する第2通知部と、をそなえるとともに、
さらに、該第1処理部が、
該第2障害箇所推定部により推定された障害箇所を使用している主体を特定する特定部と、
該特定部により特定された主体を終了させる、終了部と、をそなえたことを特徴とするシステム。
(付記2)
該装置を複数そなえ、
該複数の装置同士が、該第1処理部を上位として、該第1の経路を介して多段に接続され、
該第2取得部が、該第1取得部によって取得できなかった障害情報を、該第2の経路を介して取得することを特徴とする付記1記載のシステム。
(付記3)
該第1通知部は、該第1取得部によって取得できなかった障害情報の格納位置を示す位置情報を該第2処理部に通知し、
該第2取得部は、該位置情報に基づいて、該第1取得部によって取得できなかった障害情報を取得することを特徴とする付記2記載のシステム。
(付記4)
該位置情報は、該第1取得部によって取得できなかった障害情報のうち、最上位の装置が保持する障害情報の格納位置を示し、
該第2取得部は、該位置情報に基づいて、該最上位の装置が保持する障害情報および該最上位の装置の下位に接続された装置が保持する障害情報を取得することを特徴とする付記3記載のシステム。
(付記5)
該第2障害箇所推定部によって推定された障害原因箇所(以下、第2障害原因箇所という)と、該第2障害原因箇所の障害情報と、に基づいて、システム障害情報を生成する生成部をそなえたことを特徴とする付記4記載のシステム。
(付記6)
該第1処理部が、
該第1取得部が取得した障害情報に基づいて、障害原因箇所を推定する第1障害箇所推定部と、
該第1障害箇所推定部によって推定された障害原因箇所(以下、第1障害原因箇所という)、および、該第1障害原因箇所の障害情報を、該第2処理部に通知する第3通知部と、をそなえ、
該生成部は、該第3通知部により通知された第1障害原因箇所と、該第1障害原因箇所の障害情報と、該第2障害原因箇所と、該第2障害原因箇所の障害情報と、該無応答情報と、該位置情報とに基づいて、システム障害情報を生成することを特徴とする付記5記載のシステム。
(付記7)
該第1通知部は、所定時間、該第1取得部が障害情報を取得できない場合に、該無応答情報を該第2処理部に通知することを特徴とする付記1記載のシステム。
(付記8)
第1処理部と、第2処理部とをそなえたシステムにおける障害処理方法であって、
第1処理部が、該システムにおいて障害が発生した場合、該第1処理部および該第2処理部とそれぞれ第1の経路および第2の経路を介して接続された装置が保持する障害情報を、該第1の経路を介して取得する第1取得ステップと、
該第1取得ステップによって障害情報が取得できない場合に、該装置が無応答である旨を示す無応答情報を第1処理部が該第2処理部に通知する第1通知ステップと、
該第1通知ステップによって該無応答情報の通知があった場合に、第2処理部が、該第2の経路を介して障害情報を装置から取得する第2取得ステップと、
該第2取得ステップによって取得された障害情報に基づいて、第2処理部が障害原因箇所を推定する第2障害箇所推定ステップと、
第2処理部が、該第2障害箇所推定ステップにより推定された障害箇所を、該第1処理部に通知する第2通知ステップと、
第1処理部が、該第2障害箇所推定ステップにより推定された障害箇所を使用している主体を特定する特定ステップと、
該特定ステップにより特定された主体を終了させる終了ステップと、をそなえたことを特徴とする障害処理方法。
1 システム
2 第1記憶部
3 第2記憶部
10 CPU
11 バス番号割当部
12 第1取得部
13 第1通知部
14 第1障害箇所推定部
15 依頼部
16 判断部
17 終了部
18 リセット指示部
20 チップセット
21 IOハブ
22 サウスブリッジ
23 BMC
30,31,32 スイッチ
33 コンフィグレーションレジスタ
40 MC
50,51,52,53,54 PCI-Expressバス
55 QPIバス
60 I2Cバス
80,81 PCI-Card

Claims (7)

  1. 第1処理部と、第2処理部と、第1処理部と第1の経路を介して接続され、第2処理部と第2の経路を介して接続される装置とをそなえたシステムであって、
    該第1処理部が、
    該システムにおいて障害が発生した場合、前記装置が保持する障害情報を、該第1の経路を介して取得する第1取得部と、
    該第1取得部によって該障害情報を前記装置から取得できない場合に、該障害情報が取得できない状態を示す無応答情報を該第2処理部に通知する第1通知部と、をそなえ、
    該第2処理部が、
    該第1通知部から該無応答情報の通知があった場合に、該障害情報を、該第2の経路を介して前記装置から取得する第2取得部と、
    該第2取得部が取得した障害情報に基づいて、障害原因箇所を推定する第2障害箇所推定部と、
    該第2障害箇所推定部により推定された障害箇所を、該第1処理部に通知する第2通知部と、をそなえるとともに、
    さらに、該第1処理部が、
    該第2障害箇所推定部により推定された障害箇所を使用している主体を特定する特定部と、
    該特定部により特定された主体を終了させる、終了部と、をそなえたことを特徴とするシステム。
  2. 該装置を複数そなえ、
    該複数の装置同士が、該第1処理部を上位として、該第1の経路を介して多段に接続され、
    該第2取得部が、該第1取得部によって取得できなかった障害情報を、該第2の経路を介して取得することを特徴とする請求項1記載のシステム。
  3. 該第1通知部は、該第1取得部によって取得できなかった障害情報の格納位置を示す位置情報を該第2処理部に通知し、
    該第2取得部は、該位置情報に基づいて、該第1取得部によって取得できなかった障害情報を取得することを特徴とする請求項2記載のシステム。
  4. 該位置情報は、該第1取得部によって取得できなかった障害情報のうち、最上位の装置が保持する障害情報の格納位置を示し、
    該第2取得部は、該位置情報に基づいて、該最上位の装置が保持する障害情報および該最上位の装置の下位に接続された装置が保持する障害情報を取得することを特徴とする請求項3記載のシステム。
  5. 該第2障害箇所推定部によって推定された障害原因箇所(以下、第2障害原因箇所という)と、該第2障害原因箇所の障害情報と、に基づいて、システム障害情報を生成する生成部をそなえたことを特徴とする請求項4記載のシステム。
  6. 該第1処理部が、
    該第1取得部が取得した障害情報に基づいて、障害原因箇所を推定する第1障害箇所推定部と、
    該第1障害箇所推定部によって推定された障害原因箇所(以下、第1障害原因箇所という)、および、該第1障害原因箇所の障害情報を、該第2処理部に通知する第3通知部と、をそなえ、
    該生成部は、該第3通知部により通知された第1障害原因箇所と、該第1障害原因箇所の障害情報と、該第2障害原因箇所と、該第2障害原因箇所の障害情報と、該無応答情報と、該位置情報とに基づいて、システム障害情報を生成することを特徴とする請求項5記載のシステム
  7. 第1処理部と、第2処理部とをそなえたシステムにおける障害処理方法であって、
    第1処理部が、該システムにおいて障害が発生した場合、該第1処理部および該第2処理部とそれぞれ第1の経路および第2の経路を介して接続された装置が保持する障害情報を、該第1の経路を介して取得する第1取得ステップと、
    該第1取得ステップによって障害情報が取得できない場合に、該装置が無応答である旨を示す無応答情報を第1処理部が該第2処理部に通知する第1通知ステップと、
    該第1通知ステップによって該無応答情報の通知があった場合に、第2処理部が、該第2の経路を介して障害情報を装置から取得する第2取得ステップと、
    該第2取得ステップによって取得された障害情報に基づいて、第2処理部が障害原因箇所を推定する第2障害箇所推定ステップと、
    第2処理部が、該第2障害箇所推定ステップにより推定された障害箇所を、該第1処理部に通知する第2通知ステップと、
    第1処理部が、該第2障害箇所推定ステップにより推定された障害箇所を使用している主体を特定する特定ステップと、
    該特定ステップにより特定された主体を終了させる終了ステップと、をそなえたことを特徴とする障害処理方法。
JP2012531618A 2010-09-01 2010-09-01 システムおよび障害処理方法 Active JP5370591B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/064966 WO2012029147A1 (ja) 2010-09-01 2010-09-01 システムおよび障害処理方法

Publications (2)

Publication Number Publication Date
JPWO2012029147A1 JPWO2012029147A1 (ja) 2013-10-28
JP5370591B2 true JP5370591B2 (ja) 2013-12-18

Family

ID=45772283

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012531618A Active JP5370591B2 (ja) 2010-09-01 2010-09-01 システムおよび障害処理方法

Country Status (3)

Country Link
US (1) US8832501B2 (ja)
JP (1) JP5370591B2 (ja)
WO (1) WO2012029147A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136083A (zh) * 2011-11-29 2013-06-05 鸿富锦精密工业(深圳)有限公司 通用串行总线的测试设备及方法
AU2014232838A1 (en) * 2013-03-15 2015-09-24 Nec Corporation Information processing device
JP2014186376A (ja) * 2013-03-21 2014-10-02 Fujitsu Ltd 障害箇所特定方法、スイッチング装置、障害箇所特定装置、及び情報処理装置
US9146797B2 (en) * 2013-08-09 2015-09-29 American Megatrends, Inc. Method for ensuring remediation of hung multiplexer bus channels
US9256489B2 (en) * 2013-10-30 2016-02-09 International Business Machines Corporation Synchronized debug information generation
JP6303405B2 (ja) * 2013-11-01 2018-04-04 富士通株式会社 情報処理装置、管理装置、監視装置、監視プログラム、及び管理装置の監視方法
BR112016012902A2 (pt) * 2014-01-16 2017-08-08 Intel Corp Aparelho, método e sistema para um mecanismo de configuração rápida
JP6427979B2 (ja) * 2014-06-19 2018-11-28 富士通株式会社 原因特定方法、原因特定プログラム、情報処理システム
US10489232B1 (en) * 2015-09-29 2019-11-26 Amazon Technologies, Inc. Data center diagnostic information
JP2018055337A (ja) * 2016-09-28 2018-04-05 富士通株式会社 情報処理装置およびプログラム
CN108108254B (zh) * 2016-11-24 2021-07-06 英业达科技有限公司 交换器错误排除方法
US11163659B2 (en) * 2019-04-25 2021-11-02 Intel Corporation Enhanced serial peripheral interface (eSPI) signaling for crash event notification

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008176564A (ja) * 2007-01-18 2008-07-31 Fujitsu Ltd ログメモリアクセス回路、情報処理装置および情報処理装置のログ採取システム
JP2009217435A (ja) * 2008-03-10 2009-09-24 Fujitsu Ltd 制御方法、情報処理装置及びストレージシステム
JP2010092112A (ja) * 2008-10-03 2010-04-22 Fujitsu Ltd 情報システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05282167A (ja) 1992-04-03 1993-10-29 Hitachi Ltd 障害処理方法
JPH11259383A (ja) 1998-03-12 1999-09-24 Hitachi Ltd Ras情報取得回路及びそれを備えた情報処理システム
US7020076B1 (en) * 1999-10-26 2006-03-28 California Institute Of Technology Fault-tolerant communication channel structures
US6704812B2 (en) * 2000-11-30 2004-03-09 International Business Machines Corporation Transparent and dynamic management of redundant physical paths to peripheral devices
JP2005251078A (ja) * 2004-03-08 2005-09-15 Hitachi Ltd 情報処理装置、及び情報処理装置の制御方法
JP2005011379A (ja) 2004-09-27 2005-01-13 Ricoh Co Ltd Agpバスシステム
US7370224B1 (en) * 2005-02-17 2008-05-06 Alcatel Usa Sourcing, Inc System and method for enabling redundancy in PCI-Express architecture
US7487403B2 (en) * 2004-11-12 2009-02-03 International Business Machines Corporation Method for handling a device failure
US7779308B2 (en) * 2007-06-21 2010-08-17 International Business Machines Corporation Error processing across multiple initiator network
CN102906303B (zh) 2010-06-03 2015-01-28 株式会社爱发科 溅射成膜装置
US8381027B1 (en) * 2010-09-28 2013-02-19 Emc Corporation Determining alternate paths in faulted systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008176564A (ja) * 2007-01-18 2008-07-31 Fujitsu Ltd ログメモリアクセス回路、情報処理装置および情報処理装置のログ採取システム
JP2009217435A (ja) * 2008-03-10 2009-09-24 Fujitsu Ltd 制御方法、情報処理装置及びストレージシステム
JP2010092112A (ja) * 2008-10-03 2010-04-22 Fujitsu Ltd 情報システム

Also Published As

Publication number Publication date
US8832501B2 (en) 2014-09-09
JPWO2012029147A1 (ja) 2013-10-28
US20130166953A1 (en) 2013-06-27
WO2012029147A1 (ja) 2012-03-08

Similar Documents

Publication Publication Date Title
JP5370591B2 (ja) システムおよび障害処理方法
TWI632462B (zh) 開關裝置及偵測積體電路匯流排之方法
JP6333410B2 (ja) 障害処理方法、関連装置、およびコンピュータ
US7613861B2 (en) System and method of obtaining error data within an information handling system
US9141463B2 (en) Error location specification method, error location specification apparatus and computer-readable recording medium in which error location specification program is recorded
US20120174112A1 (en) Application resource switchover systems and methods
TW440755B (en) Method and system for environmental sensing and control within a computer system
JP2012203636A (ja) 仮想計算機の制御方法及び計算機
JP2014071576A (ja) ストレージ制御装置,プログラマブル論理回路の復旧処理方法及び制御プログラム
US10275330B2 (en) Computer readable non-transitory recording medium storing pseudo failure generation program, generation method, and generation apparatus
US9286178B2 (en) Controller, storage apparatus, method of testing storage apparatus, and computer-readable storage medium
US8145956B2 (en) Information processing apparatus, failure processing method, and recording medium in which failure processing program is recorded
JP6183931B2 (ja) クラスタシステム、サーバ装置、クラスタシステムの管理方法、及びプログラム。
US20160283305A1 (en) Input/output control device, information processing apparatus, and control method of the input/output control device
JP2015162000A (ja) 情報処理装置,制御装置及びログ情報収集方法
CN100375960C (zh) 用于调试输入/输出故障的方法和系统
JP5689783B2 (ja) コンピュータ、コンピュータシステム、および障害情報管理方法
JPWO2011051999A1 (ja) 情報処理装置及び情報処理装置の制御方法
US11334421B2 (en) Method and apparatus to identify a problem area in an information handling system based on latencies
CN112804115B (zh) 一种虚拟网络功能的异常检测方法、装置及设备
US20120124195A1 (en) Reducing Redundant Error Messages In A Computing System
JP6212947B2 (ja) 情報処理装置、制御装置及び制御プログラム
WO2014147699A1 (ja) 管理装置、方法及びプログラム
WO2017072904A1 (ja) 計算機システム、及び、障害検知方法
JP5651004B2 (ja) 計算機切替システム、計算機切替プログラム、および計算機切替方法

Legal Events

Date Code Title Description
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: 20130820

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130902

R150 Certificate of patent or registration of utility model

Ref document number: 5370591

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250