JP2016105262A - 情報処理装置、診断方法及び診断プログラム - Google Patents

情報処理装置、診断方法及び診断プログラム Download PDF

Info

Publication number
JP2016105262A
JP2016105262A JP2014243500A JP2014243500A JP2016105262A JP 2016105262 A JP2016105262 A JP 2016105262A JP 2014243500 A JP2014243500 A JP 2014243500A JP 2014243500 A JP2014243500 A JP 2014243500A JP 2016105262 A JP2016105262 A JP 2016105262A
Authority
JP
Japan
Prior art keywords
crossbar
diagnosis
unit
port
information
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.)
Granted
Application number
JP2014243500A
Other languages
English (en)
Other versions
JP6550733B2 (ja
Inventor
靖彦 内田
Yasuhiko Uchida
靖彦 内田
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 JP2014243500A priority Critical patent/JP6550733B2/ja
Priority to US14/926,407 priority patent/US9690647B2/en
Publication of JP2016105262A publication Critical patent/JP2016105262A/ja
Application granted granted Critical
Publication of JP6550733B2 publication Critical patent/JP6550733B2/ja
Expired - Fee Related 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/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/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/0721Error 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 within a central processing unit [CPU]
    • G06F11/0724Error 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 within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/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; 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
    • 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/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Multi Processors (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】CPU、メモリを使用することなくクロスバー診断を行うことで、情報処理システムの運用を継続したままクロスバー診断を行うこと。【解決手段】ビルディングブロック6は、ビルディングブロック6を制御するXSCF7と、他のビルディングブロック6と通信を行うXBU9とを有する。XSCF7は、XBU9に対してクロスバー診断を指示するハード制御部33を備える。XBU9は、クロスバー診断に関する診断情報を記憶したポート情報記憶部41と、ポート情報記憶部41に記憶された診断情報に基づいてクロスバー診断を行うテストモジュール42とを備える。【選択図】図10

Description

本発明は、情報処理装置、診断方法及び診断プログラムに関する。
近年、CPU(Central Processing Unit)とメモリを備えた情報処理装置を複数組み合わせた情報処理システムが利用されている。かかる情報処理システムでは、情報処理装置の間をクロスバー(XB)で接続することにより、異なる情報処理装置のCPU間での通信が可能となっている。
クロスバーが故障すると、情報処理装置間で通信することができなくなり、クロスバーの故障は情報処理システム全体に影響を与える。したがって、情報処理システムの信頼性向上のためには、クロスバー診断が重要となる。
このため、CPUの指示により、クロスバスイッチに対して、障害が検出されたデータ転送におけるデータ転送元のノードから他のノードへテストパタンを送出することで障害箇所を特定するクロスバー診断技術がある。
また、スイッチに障害が発生した場合、障害が発生したスイッチを備えたノード間クロスバスイッチ以外のクロスバスイッチを経由してノード間のデータ転送を行うよう制御することで、システムダウンを防止する従来技術がある。
特開2000−242520号公報 特開2006−39897号公報
しかしながら、CPUの指示によるクロスバー診断技術には、CPUが情報処理システムで使用中の場合、情報処理システムの運用を停止しないと、診断が行えないという問題がある。
本発明は、1つの側面では、情報処理システムの運用を継続したままクロスバー診断を行うことを目的とする。
本願の開示する情報処理装置は、1つの態様において、自装置を制御する制御部と、他の情報処理装置と通信を行うクロスバー部とを有する。前記制御部は、前記クロスバー部に対してクロスバー診断を指示する指示部を備える。前記クロスバー部は、クロスバー診断に関する診断情報を記憶した診断情報記憶部と、前記診断情報記憶部に記憶された診断情報に基づいてクロスバー診断を行う診断部とを備える。
1実施態様によれば、情報処理システムの運用を継続したままクロスバー診断を行うことができる。
図1は、クロスバーを説明するための図である。 図2は、クロスバーボックスを説明するための図である。 図3は、クロスバーの冗長化を説明するための図である。 図4は、クロスバーボックスの冗長化を説明するための図である。 図5は、診断用パーティションを用いたクロスバー診断を説明するための図である。 図6は、CMI機能を説明するための図である。 図7は、CMI有効時の問題を説明するための図である。 図8は、実施例に係るクロスバー診断を説明するための図である。 図9は、診断可能範囲を示す図である。 図10は、実施例に係る情報処理システムの構成を示す図である。 図11は、パーティション構成情報の一例を示す図である。 図12は、パーティション稼働情報の一例を示す図である。 図13は、電源投入のパターンを説明するための図である。 図14は、XBUの構成を示す図である。 図15は、ビルディングブロック構成のポート情報設定値の一例を示す図である。 図16は、クロスバーボックス構成のポート情報設定値の一例を示す図である。 図17は、クロスバーテストを説明するための図である。 図18は、クロスバー診断のシーケンスを示す図である。 図19は、電源投入パターンを判定する処理のフローを示すフローチャートである。 図20は、電源投入パターンの判定例#1を示す図である。 図21は、電源投入パターンの判定例#2を示す図である。 図22は、電源投入パターンの判定例#3を示す図である。 図23は、電源投入パターンの判定例#4を示す図である。 図24は、電源投入パターンの判定例#5を示す図である。 図25は、電源投入パターンの判定例#6を示す図である。 図26は、パターン#1の場合の診断専用の電源投入処理のフローを示すフローチャートである。 図27は、パターン#2の場合の診断専用の電源投入処理のフローを示すフローチャートである。 図28は、パターン#3の場合の診断専用の電源投入処理のフローを示すフローチャートである。 図29は、ポート情報の設定例#1を示す図である。 図30は、ポート情報の設定例#2を示す図である。 図31は、ポート情報の設定例#3を示す図である。 図32は、ポート情報の設定例#4を示す図である。 図33は、XBケーブルテストの処理フローを示すフローチャートである。 図34は、XBポートテストの処理フローを示すフローチャートである。 図35は、XBケーブルテストの例(正常)を示す図である。 図36は、XBケーブルテストの例(エラー検出)を示す図である。 図37は、XBポートテストの例(正常)を示す図である。 図38は、XBポートテストの例(エラー検出)を示す図である。 図39は、診断の実行例を示す図である。 図40は、エラーログの例を示す図である。 図41は、実施例に係る診断プログラムを実行するコンピュータのハードウェア構成を示す図である。
以下に、本願の開示する情報処理装置、診断方法及び診断プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
まず、クロスバーについて説明する。図1は、クロスバーを説明するための図である。図1に示すように、クロスバーは、ビルディングブロック6間をクロスバーケーブル20で接続することにより、ビルディングブロック6に搭載されたCPU81間での通信を可能にする。ここで、ビルディングブロック6は情報処理システムを構築する単位装置であり、任意の個数のビルディングブロック6を組み合わせることで、スケーラブルな情報処理システムを構築することができる。
ビルディングブロック6は、システムボード8とXBU(クロスバーユニット)9とを有する。システムボード8は、CPU81とメモリ82とを有し、情報処理を行う。XBU9は、CPU81間のデータ転送を制御する装置であり、クロスバーケーブル20を介して他のXBU9に接続される。
図2は、クロスバーボックスを説明するための図である。図2に示すように、クロスバーボックス2は、XBU4を有し、多数のビルディングブロック6をクロスバーで結ぶことを可能にした装置である。図2では、3台のビルディングブロック6がクロスバーで接続されている。
XBU4は、クロスバーケーブル20でビルディングブロック6のXBU9と接続され、XBU9間のデータ転送を制御する。各ビルディングブロック6は、クロスバーケーブル20でクロスバーボックス2に接続される。クロスバーボックス2は、ビルディングブロック6間のデータ通信をルーティング制御することで、ビルディングブロック6間のデータ通信を可能にする。
図3は、クロスバーの冗長化を説明するための図である。図3に示すように、ビルディングブロック6は、2台のXBU9を搭載し、2つのクロスバーケーブル20を用いて他のビルディングブロック6と接続する。したがって、どちらか一方の通信経路が故障によって通信不能に陥っても、もう一方の通信経路を使用することで、情報処理システムの運用の継続が可能になる。
図4は、クロスバーボックス2の冗長化を説明するための図である。図4に示すように、ビルディングブロック6は、2台のXBU9を搭載し、クロスバーケーブル20を用いて2台のクロスバーボックス2と接続する。したがって、どちらか一方の通信経路が故障によって通信不能に陥っても、もう一方の通信経路を使用することで、情報処理システムの運用の継続が可能になる。
次に、クロスバー診断について説明する。図5は、診断用パーティションを用いたクロスバー診断を説明するための図である。ここで、パーティションとは、ビルディングブロック6をグループ化することによって情報処理システムを分割したものである。例えば、複数のビルディングブロック6から構築される情報処理システムは、ユーザ毎のパーティションに分割される。
パーティションは、独立した情報処理システムであり、他のパーティションの影響を受けない。図5において、ユーザ環境パーティション62は、ユーザにより使用されているビルディングブロック6の集まりであり、診断用パーティション63は、クロスバー診断の対象のビルディングブロック6の集まりである。このように、診断用パーティション63を構築することで、ユーザ環境に影響を与えることなくクロスバー診断を行うことができる。
しかし、CMI(Common Memory Interface)機能が有効な場合には、診断用パーティション63を用いても、ユーザ環境パーティション62に影響を与える。ここで、CMI機能とは、複数のパーティションでメモリ82を共有使用する機能である。
図6は、CMI機能を説明するための図である。本来、CPU81のアクセス対象は同一パーティショ61内のものに限定される。しかし、CMI機能を有効にすると、CPU81は、パーティション61をまたがってメモリ82にアクセスすることができる。図6は、あるパーティション61のメモリ82内の共有メモリ82aが、他のパーティション61のCPU81にアクセスされる場合を示す。
図6に示すように、CPU81が他のパーティション61のメモリ82にアクセスする場合には、クロスバー通信が使用される。すなわち、CPU81は、XBU9を介して他のビルディングブロック6のメモリ82にアクセスする。
図7は、CMI有効時の問題を説明するための図である。CMI機能が有効の場合、ハードウェア仕様によりクロスバー通信によるアクセスは、共有メモリ82aへのアクセスに限定される。しかし、共有メモリ82aを設定すると、ハードウェアの機能によって、共有メモリ82aは全パーティション61からアクセス可能になってしまう。図7において、ユーザ環境パーティション62の共有メモリ82aは、診断用パーティション63のCPU81からもアクセスが可能である。
また、CMI機能が有効の場合、ビルディングブロック6の故障を全パーティション61に通知する機能がハードウェアに備わっている。そのため、クロスバー診断中に故障が発生すると、故障通知がユーザ環境を含む全パーティション61に通知されてしまう。
そこで、実施例に係るクロスバー診断は、CMI有効時、ユーザ環境に影響を与えないようクロスバーを診断する。すなわち、実施例に係るクロスバー診断は、CMI機能が有効の際、クロスバー診断によるユーザ環境パーティション62への影響をなくす。
図8は、実施例に係るクロスバー診断を説明するための図である。図8に示すように、実施例に係るクロスバー診断は、 診断環境すなわち診断用パーティション63に共有メモリ82aを作成しないでクロスバーの診断を行うとともに、ユーザ環境の共有メモリ82aに診断環境からアクセスさせない。また、実施例に係るクロスバー診断は、診断環境で発生した故障をユーザ環境に通知させないとともに、ユーザ環境の故障通知を診断環境で受け付けさせない。
また、クロスバー診断には、クロスバーボックス2とビルディングブロック6単体の構成でクロスバー診断ができないという問題がある。クロスバー通信は、CPU81、メモリ82同士のアクセスを用いて実施される。そのため、クロスバー通信には、送信元及び送信先の双方にCPU81、メモリ82が必要になる。しかしながら、CPU81、メモリ82は、クロスバーボックス2には搭載されておらず、ビルディングブロック6にのみ搭載されている。そのためクロスバーを診断するには2台以上のビルディングブロック6が必要になる。
そこで、実施例に係るクロスバー診断では、ビルディングブロック6は、CPU81、メモリ82を搭載していないクロスバーボックス2を相手にクロスバー通信を行い、ビルディングブロック6が1台であっても、クロスバー診断を可能にする。すなわち、実施例に係るクロスバー診断では、図9に示す診断範囲66での診断が可能である。
また、クロスバー診断には、クロスバーボックス2の診断の際に、全ビルディングブロック6を停止させなければならないという問題がある。クロスバーは冗長構成のため、1台のクロスバーボックス2を診断対象にしたい場合、もう1台のクロスバーボックス2とビルディングブロック6はユーザ環境で使用中の可能性がある。また、クロスバーボックス2は、全てのビルディングブロック6にクロスバーケーブル20で接続されている。そのため、クロスバーボックス2を診断したい場合、全てのビルディングブロック6を対象にクロスバー通信をする必要がある。
しかし、クロスバー通信は、CPU81、メモリ82を使用して実施されるため、診断には各ビルディングブロック6のCPU81、メモリ82が必要になる。したがって、クロスバーボックスを診断する場合、ユーザ使用中の全てのビルディングブロック6を停止させる必要がある。
そこで、実施例に係るクロスバー診断では、クロスバーボックス2は、ビルディングブロック6に搭載されたXBU9を対象にクロスバー通信を行い、ユーザ環境で使用中のビルディングブロック6を停止させることなく、クロスバーボックス2の診断を可能にする。すなわち、実施例に係るクロスバー診断では、図9に示す診断範囲67での診断が可能である。
次に、実施例に係る情報処理システムの構成について説明する。図10は、実施例に係る情報処理システムの構成を示す図である。図10に示すように、情報処理システム1は、2台のクロスバーボックス2と、8台のビルディングブロック6と、ユーザ端末10とを有する。図10では、2台のクロスバーボックス2は、XBBOX#80及びXBBOX#81で表され、8台のビルディングブロック6は、BB#0〜BB#7で表される。
なお、「XB」はクロスバーを表し、「XBBOX」はクロスバーボックスを表し、「BB」はビルディングブロックを表す。また、ここでは説明の便宜上、8台のビルディングブロック6を示したが、情報処理システム1は、より多くの台数又はより少ない台数のビルディングブロック6を有してよい。
クロスバーボックス2は、XSCF3とXBU4とを有する。ビルディングブロック6は、XSCF7と、システムボード8と、2台のXBU9とを有する。ユーザ端末10は、ユーザが使用するPC(Personal Computer)である。ユーザ端末10はLAN(Local Area Network)11によりXSCF3に接続されており、ユーザはユーザ端末10からXSCF3にパーティション構成の指定、クロスバー診断の指示、電源制御指示などを行うことができる。
XSCF3は、クロスバーボックス2を制御するシステム制御機構である。XSCF7は、ビルディングブロック6を制御するシステム制御機構である。情報処理システム1は、マスターとして動作する1台のXSCF3とスレーブとして動作する8台のXSCF7で構成されており、各XSCFは内部LAN12で接続されている。
スレーブは装置内のハードウェア制御を行い、マスターはユーザにサービスを提供する。ユーザはマスターに対してサービス要求を行い、要求を受けたマスターはスレーブへの指示と、スレーブからの情報収集を行う。なお、マスターはスレーブ機能も兼ねている。また、図10では、クロスバーボックス2のXSCF3がマスターである場合を示すが、クロスバーボックス2を用いない場合などで、ビルディングブロック6のXSCF7がマスターとして動作してもよい。
XSCF3は、情報を記憶する記憶部3aと、記憶部3aを用いて制御を行う制御部3bとを有する。XSCF7は、情報を記憶する記憶部7aと、記憶部7aを用いて制御を行う制御部7bとを有する。記憶部3a及び記憶部7aは、パーティション構成情報30aと、パーティション稼働情報30bと、CMI情報30cとを記憶する。制御部3bは、診断部31と、構成判定部32と、ハード制御部33と、RAS制御部34と、BB間通信部35とを有する。制御部7bは、構成判定部32と、ハード制御部33と、RAS制御部34と、BB間通信部35とを有する。
パーティション構成情報30aは、パーティション61の構成及び各ビルディングブロック6の状態を示す情報である。図11は、パーティション構成情報30aの一例を示す図である。図11に示すように、パーティション構成情報30aには、BBIDと、PPARと、割当状態と、電源状態と、接続状態と、設定状態と、試験状態と、故障状態とが含まれる。
BBIDは、ビルディングブロック6を識別する番号である。PPARは、ビルディングブロック6が含まれるパーティション61を識別する番号である。割当状態は、ビルディングブロック6がいずれかのパーティション61に割り当てられている(A)か否(NA)かを示す。電源状態は、ビルディングブロック6の電源が投入されている(y)か否(n)かを示す。
接続状態は、ビルディングブロック6がパーティション61を構成するように接続されている(y)か否(n)かを示す。設定状態は、ビルディングブロック6が使用可能なように設定されている(y)か否(n)かを示す。試験状態は、ビルディングブロック6が試験にパスした(P)か否(NP)を示す。故障状態は、ビルディングブロック6が正常である(N)か否(F)かを示す。
例えば、番号が「0」のビルディングブロック6は、番号が「0」のパーティション61に割り当てられ、電源が投入済みで、使用可能であり、試験にパスし、正常な状態である。
パーティション稼働情報30bは、パーティションの稼働状態を示す情報である。図12は、パーティション稼働情報30bの一例を示す図である。図12に示すように、パーティション稼働情報30bには、PPAR−IDとPPAR状態とが含まれる。PPAR−IDは、パーティション61を識別する番号である。PPAR状態は、パーティション61の状態を示す。パーティション61の状態には、「電源切断」、「初期化中」、「初期化完了」、「稼働中」、「異常状態」、「未設定」がある。
CMI情報30cは、CMI機能が有効であるか否かを示す情報である。記憶部3aと各ビルディングブロック6の記憶部7aは、BB間通信により同一のパーティション構成情報30a、パーティション稼働情報30b及びCMI情報30cを記憶する。
診断部31は、クロスバーボックス2及び各ビルディングブロック6の構成判定部32、ハード制御部33、RAS制御部34及びBB間通信部35を用いてクロスバー診断を行う。
構成判定部32は、装置の各種部品の故障状況やユーザ使用状況を判定する。構成判定部32は、妥当性判定部32aと環境判定部32bとを有する。妥当性判定部32aは、ユーザにより指定された診断対象の妥当性を判定する。環境判定部32bは、ユーザ環境すなわち装置のユーザ使用状況を判定し、ユーザ使用状況に基づいて診断範囲を特定し、特定した診断範囲の電源投入のパターンを決定する。
図13は、電源投入のパターンを説明するための図である。図13は、ビルディングブロック6は1台のXBU9を有し、XBU9が3つのポート43を有し、ビルディングブロック6の環境判定部32bが電源投入処理のパターンを決定する場合を示す。3つのポート43はポート#1〜ポート#3で示される。
パターン#1は、ビルディングブロック6が停止状態である場合であり、ビルディングブロック6及びXBU9の電源を投入し、XBU9のポート43を初期化する場合である。パターン#2は、XBU9が停止状態である場合であり、XBU9の電源を投入し、XBU9のポート43を初期化する場合である。パターン#3は、XBU9のポート43が停止状態である場合であり、XBU9のポート43を初期化する場合である。
ハード制御部33は、装置の部品に対してハードウェア制御を実施する。ハード制御部33は、診断電源投入部33aを有する。診断電源投入部33aは、診断専用の電源投入処理としてパターン#1〜パターン#3に対する処理を備え、環境判定部32bが決定したパターンに基づいて、クロスバー診断する上で必要な部品の電源投入を実施する。また、診断電源投入部33aは、XBUの電源投入を行った場合、XBUの初期化を行い、後述するポート種別の設定を行う。
RAS制御部34は、ハードウェアからの異常通知を受け、解析やエラーログの生成を行う。BB間通信部35は、内部LAN12を使用して、他のXSCFとの通信の制御を行う。BB間通信部35による通信を用いて、XSCFは、各機能部が行う処理のタイミングを合わせたり、記憶部が記憶する情報を一致させたりする。
XBU4及びXBU9は、ポート情報記憶部41とテストモジュール42とを有する。ポート情報記憶部41は、ポート43毎に設けられ、ポート情報を記憶する。ポート情報には、ポート種別と接続先情報が含まれる。ポート種別は、ポート43がクロスバー診断に使用される診断ポートであるかクロスバー診断に使用されない通常ポートであるかを示す。診断ポートに設定されたポート43はテストモジュール42に対してデータの送受信を行い、通常ポートに設定されたポート43はCPU81に対してデータの送受信を行う。
接続先情報には、クロスバーケーブル20を介して接続される先のビルディングブロック6又はクロスバーボックス2のBBID、XBU番号、及びポート番号が含まれる。ここで、XBU番号はXBUを識別する番号であり、ポート番号はポート43を識別する番号である。ポート情報は、クロスバー診断の際に、XSCFによって設定され、通信先の判断及び受信データのチェックに利用される。
テストモジュール42は、ポート43が診断ポートである場合に、接続先情報を用いてクロスバー診断を行う。具体的には、テストモジュール42は、接続先情報を用いて他のテストモジュール43と通信を行い、通信結果を解析してクロスバー通信の診断を行う。
図14は、XBU9の構成を示す図である。なお、nを整数としてBB#n、XBU#n及びポート#nは、それぞれ番号が「n」で識別されるビルディングブロック6、XBU及びポート43を示す。図14では、BB#0がBB#1〜BB#3にXBU9で接続されている。
図14に示すように、BB#0のXBU9は、ポート#0〜ポート#2で表される3つのポート43を有する。ポート#0に対応付けられたポート情報記憶部41は、ポート種別として診断ポート、接続先情報としてBB#1、XBU#0及びポート#0を記憶する。すなわち、BB#0のXBU9のポート#0は、クロスバー診断に使用され、番号が「1」で識別されるビルディングブロック6の番号が「0」で識別されるXBU9の番号が「0」で識別されるポート43に接続される。
また、ポート#1に対応付けられたポート情報記憶部41は、ポート種別として通常ポート、接続先情報としてBB#2、XBU#0及びポート#0を記憶する。すなわち、BB#0のXBU9のポート#1は、クロスバー診断に使用されず、番号が「2」で識別されるビルディングブロック6の番号が「0」で識別されるXBU9の番号が「0」で識別されるポート43に接続される。また、ポート#2に対応付けられたポート情報記憶部41は、ポート種別として通常ポート、接続先情報としてBB#3、XBU#0及びポート#0を記憶する。すなわち、BB#0のXBU9のポート#2は、クロスバー診断に使用されず、番号が「3」で識別されるビルディングブロック6の番号が「0」で識別されるXBU9の番号が「0」で識別されるポート43に接続される。
図15は、ビルディングブロック構成のポート情報設定値の一例を示す図である。ここで、ビルディングブロック構成とは、図14に示したように、クロスバーボックス2を用いないでビルディングブロック6をクロスバーで接続する構成である。また、図15は、各ビルディングブロック6が1台のXBU9を有する場合を示す。
図15に示すように、各ビルディングブロック6の各ポート43に、接続先BBIDと接続先ポート番号とポート種別が設定される。接続先BBIDは、接続先のビルディングブロック6の番号である。接続先ポート番号は、接続先のポート43の番号である。なお、各ビルディングブロック6が複数のXBU9を有する場合には、各ビルディングブロック6の各XBU9の各ポート43に、接続先BBIDと接続先のXBU9の番号と接続先ポート番号が設定される。
図16は、クロスバーボックス構成のポート情報設定値の一例を示す図である。ここで、クロスバーボックス構成とは、図2に示したように、クロスバーボックス2を用いてビルディングブロック6をクロスバーで接続する構成である。また、図16は、クロスバーボックス2及び各ビルディングブロック6が1台のXBU9を有する場合を示す。
図16に示すように、クロスバーボックス2及び各ビルディングブロック6の各ポート43に、接続先BBIDと接続先ポート番号とポート種別が設定される。「Not Installed」は、ポート43が実装されていないことを示す。なお、クロスバーボックス2及び各ビルディングブロック6が複数のXBUを有する場合には、クロスバーボックス2及び各ビルディングブロック6の各XBUの各ポート43に、接続先BBIDと接続先のXBU9の番号と接続先ポート番号が設定される。
図14に戻って、テストモジュール42は、XBケーブルテストを行うXBケーブルテスト部42aとXBポートテストを行うXBポートテスト部42bとを有する。XBケーブルテスト部42aは、クロスバーケーブル20がポート43単位で正しく接続されているかをテストする。送信元のテストモジュール42は、送信先の診断ポートに送信元のBBID、XBU番号及びポート番号のデータを送信する。送信先のテストモジュール42は、受信したポート43に設定されているポート情報と受信データが一致するかどうかチェックする。XBケーブルテストは、XB通信異常を検知することができないが、クロスバーケーブル20の接続誤りを検知することができる。
XBポートテスト部42bは、クロスバー通信の経路に故障が発生していないかをテストする。送信元のXBポートテスト部42bは、送信先の診断ポートにダミーパケットを送信する。送信先のXBポートテスト部42bは、受け取ったダミーパケットをそのまま送信元に返信する。送信元のXBポートテスト部42bは、返信されたデータと送信時のデータに不一致がないかチェックする。XBポートテストは、クロスバーケーブル20の接続誤りを検知することはできないが、故障やケーブル抜けなど、クロスバー通信異常を検知することができる。
図17は、クロスバーテストを説明するための図である。図17は、ビルディングブロック6間でクロスバーテストを行う場合を示す。図17に示すように、クロスバーテストは、2つのテストモジュール42の間で行われる。送信元となるXBU9からテストが開始され、送信先となるXBU9に向けて、クロスバー通信が行われる。送信先のXBU9は、受け取ったクロスバー通信データに対して、データ解析や送信元への折り返し通信を行う。送信元と送信先には、診断対象となるビルディングブロック6及びクロスバーボックス2全ての組み合わせパターンが選ばれ、各組み合せパターンでクロスバーテストが双方向で行われる。
次に、クロスバー診断のシーケンスについて説明する。図18は、クロスバー診断のシーケンスを示す図である。図18に示すように、マスターとして動作するXSCF3の診断部31は、ユーザ端末10から診断対象としてクロスバーボックス2及びビルディングブロック6の指定を受け付ける(ステップS1)。そして、診断部31は、診断対象の各構成判定部32に診断対象の妥当性判断を指示し、診断対象の各構成判定部32が診断対象の妥当性を判断する(ステップS2)。
そして、診断部31は、診断対象の各構成判定部32に診断専用の電源投入を指示する(ステップS3)。すると、各構成判定部32は、ユーザ環境を判定し、ユーザ環境から電源投入のパターンを判定する(ステップS4)。そして、各ハード制御部33がパターン別に診断専用の電源投入処理を実施する(ステップS5)。
そして、各構成判定部32がポート情報を作成し(ステップS6)、各ハード制御部33がポート情報を設定する(ステップS7)。そして、各XBUがポート情報を登録する(ステップS8)。
そして、各ハード制御部33が各XBUにXBケーブルテストの開始を指示し(ステップS9)、各XBUがXBケーブルテストを実行する(ステップS10)。そして、各ハード制御部33が各XBUにXBポートテストの開始を指示し(ステップS11)、各XBUがXBポートテストを実行する(ステップS12)。
このように、実施例に係る情報処理システム1は、CPU81を用いることなくクロスバー診断を行うので、情報処理システム1の運用を継続したままクロスバー診断を行うことができる。
次に、電源投入パターンを判定する処理のフローについて説明する。図19は、電源投入パターンを判定する処理のフローを示すフローチャートである。図19に示すように、環境判定部32bは、パーティション構成に自装置が含まれるか否かを判定する(ステップS21)。その結果、含まれない場合には、自装置は停止状態にあるので、環境判定部32bは、電源投入のパターンをパターン#1と判定する(ステップS22)。なお、装置が停止状態にある場合にもXSCFは動作可能である。
一方、パーティション構成に自装置が含まれる場合には、環境判定部32bは、自装置が含まれるパーティション61の電源がオンであるか否かを判定する(ステップS23)。その結果、自装置が含まれるパーティション61の電源がオンでない場合には、自装置は停止状態にあるので、環境判定部32bは、電源投入のパターンをパターン#1と判定する(ステップS22)。
一方、自装置が含まれるパーティション61の電源がオンである場合には、環境判定部32bは、CMI機能が有効か否かを判定し(ステップS24)、有効でない場合には、パーティション61が複数BB構成であるか否かを判定する(ステップS25)。その結果、複数BB構成でない場合には、クロスバー通信は行われず、XBUが停止状態にあるので、環境判定部32bは、電源投入のパターンをパターン#2と判定する(ステップS26)。
一方、パーティション61が複数BB構成である場合には、環境判定部32bは、全ポート43が使用中であるか否かを判定し(ステップS27)、使用されてないポート43がある場合には、電源投入のパターンをパターン#3と判定する(ステップS28)。一方、全ポート43が使用中である場合には、環境判定部32bは、自装置はユーザ使用中により診断対象外と判定する(ステップS29)。
また、ステップS24で、CMI機能が有効であると判定した場合には、環境判定部32bは、全ポート43が使用中であるか否かを判定し(ステップS30)、使用されてないポート43がある場合には、電源投入のパターンをパターン#3と判定する(ステップS28)。一方、全ポート43が使用中である場合には、環境判定部32bは、自装置はユーザ使用中により診断対象外と判定する(ステップS29)。
このように、環境判定部32bがユーザにより使用されていない範囲を診断範囲として特定し、診断専用の電源投入のパターンを判定することで、XSCFはユーザの使用環境に影響を与えることなくクロスバー診断を行うことができる。
次に電源投入パターンの判定例について図20〜図25を用いて説明する。なお、図20〜図23では、4台のビルディングブロック6によるビルディングブロック構成の場合について説明する。また、各ビルディングブロック6は、2台のXBU9を有し、他の全てのビルディングブロック6と二重化接続されている。図24〜図25では、2台のクロスバーボックス2と5台のビルディングブロック6によるクロスバーボックス構成の場合について説明する。また、各ビルディングブロック6は、2台のXBU9を有し、2台のクロスバーボックス2に接続されている。また、各XBU9は、1つのポート43を有する。
図20は、電源投入パターンの判定例#1を示す図である。図20において、BB#0、BB#1及びBB#3は動作中であり、BB#2は停止中である。BB#0とBB#1は1つのパーティション61を構成し、BB#3は単独でパーティション61を構成する。また、ここではCMI機能は無効とする。このため、BB#0とBB#1のクロスバー通信だけがユーザ使用中の状態にある。
この場合、図20の表に示すように、BB#0及びBB#1は、BB6とXBU9が動作中であり、一部のXBポートが停止している。ここで、XBポートはXBUのポート43である。したがって、BB#0及びBB#1の環境判定部32bは、電源投入パターンをパターン#3と判定する。また、BB#2は、停止している。したがって、BB#2の環境判定部32bは、電源投入パターンをパターン#1と判定する。また、BB#3は、BB6が動作中であり、XBU9が停止している。したがって、BB#3の環境判定部32bは、電源投入パターンをパターン#2と判定する。
図21は、電源投入パターンの判定例#2を示す図である。図21において、BB#0、BB#1及びBB#3は動作中であり、BB#2は停止中である。BB#0、BB#1及びBB#3は、それぞれ単独でパーティション61を構成する。また、ここではCMI機能は有効とする。このため、BB#0とBB#1、BB#0とBB#3、及び、BB#1とBB#3のクロスバー通信がユーザ使用中の状態にある。
この場合、図21の表に示すように、BB#0、BB#1及びBB#3は、BB6とXBU9が動作中であり、一部のXBポートが停止している。したがって、BB#0、BB#1及びBB#3の環境判定部32bは、電源投入パターンをパターン#3と判定する。また、BB#2は、停止している。したがって、BB#2の環境判定部32bは、電源投入パターンをパターン#1と判定する。
図22は、電源投入パターンの判定例#3を示す図である。図22において、BB#0、BB#1及びBB#3は動作中であり、BB#2は停止中である。BB#0とBB#1は1つのパーティション61を構成し、BB#3は単独でパーティション61を構成する。BB#0とBB#1は、片方のXBU9(XBU#1)が停止している。また、ここではCMI機能は無効とする。このため、BB#0とBB#1の片方のクロスバー通信だけがユーザ使用中の状態にある。
この場合、図22の表に示すように、BB#0及びBB#1は、BB6とXBU#0が動作中であり、XBU#1が停止中である。また、XBU#0では、一部のXBポートが停止している。したがって、BB#0及びBB#1の環境判定部32bは、XBU#1については電源投入パターンをパターン#2と判定し、XBU#0については電源投入パターンをパターン#3と判定する。また、BB#2は、停止している。したがって、BB#2の環境判定部32bは、電源投入パターンをパターン#1と判定する。また、BB#3は、BB6が動作中であり、XBU9が停止している。したがって、BB#3の環境判定部32bは、電源投入パターンをパターン#2と判定する。
図23は、電源投入パターンの判定例#4を示す図である。図23において、BB#0、BB#1及びBB#3は動作中であり、BB#2は停止中である。BB#0、BB#1及びBB#3は、それぞれ単独でパーティション61を構成する。BB#0、BB#1及びBB#3は、片方のXBU9(XBU#1)が停止している。また、ここではCMI機能は有効とする。このため、BB#0とBB#1の片方、BB#0とBB#3の片方、及び、BB#1とBB#3の片方のクロスバー通信がユーザ使用中の状態にある。
この場合、図23の表に示すように、BB#0、BB#1及びBB#3は、BB6とXBU#0が動作中であり、XBU#1が停止中である。また、XBU#0では、一部のXBポートが停止している。したがって、BB#0、BB#1及びBB#3の環境判定部32bは、XBU#1については電源投入パターンをパターン#2と判定し、XBU#0については電源投入パターンをパターン#3と判定する。また、BB#2は、停止している。したがって、BB#2の環境判定部32bは、電源投入パターンをパターン#1と判定する。
図24は、電源投入パターンの判定例#5を示す図である。図24において、XBBOX#80は動作中であり、XBBOX#81は停止中である。BB#0及びBB#1は動作中であり、BB#2〜BB#4は停止中である。BB#0及びBB#1のXBU#0は動作中であり、BB#0及びBB#1のXBU#1は停止中である。BB#0及びBB#1は、パーティション61を構成する。また、ここではCMI機能は無効とする。このため、BB#0のXBU#0とXBBOX#80のXBU4とのクロスバー通信、及び、BB#1のXBU#0とXBBOX#80のXBU4のクロスバー通信がユーザ使用中の状態にある。
この場合、図24の表に示すように、XBBOX#80は、XBBOX2とXBU4が動作中であり、一部のXBポートが停止している。したがって、XBBOX#80の環境判定部32bは、電源投入パターンをパターン#3と判定する。また、XBBOX#81は、停止している。したがって、XBBOX#81の環境判定部32bは、電源投入パターンをパターン#1と判定する。
また、BB#0及びBB#1は、BB6とXBU#0が動作中であり、XBU#1が停止中である。また、XBU#0では、全部のXBポートが動作している。したがって、BB#0及びBB#1の環境判定部32bは、XBU#1については電源投入パターンをパターン#2と判定し、XBU#0については診断の対象外と判定する。また、BB#2〜BB#4は、停止している。したがって、BB#2〜BB#4の環境判定部32bは、電源投入パターンをパターン#1と判定する。
図25は、電源投入パターンの判定例#6を示す図である。図25において、XBBOX#80及びXBBOX#81は動作中である。BB#0及びBB#1は動作中であり、BB#2〜BB#4は停止中である。BB#0及びBB#1のXBU#0は動作中であり、BB#0及びBB#1のXBU#1も動作中である。BB#0及びBB#1は、それぞれ単独でパーティション61を構成する。また、ここではCMI機能は有効とする。このため、BB#0のXBU#0とXBBOX#80のXBU4とのクロスバー通信、及び、BB#1のXBU#0とXBBOX#80のXBU4のクロスバー通信がユーザ使用中の状態にある。また、BB#0のXBU#1とXBBOX#81のXBU4とのクロスバー通信、及び、BB#1のXBU#1とXBBOX#81のXBU4のクロスバー通信がユーザ使用中の状態にある。
この場合、図25の表に示すように、XBBOX#80及びXBBOX#81は、XBBOX2とXBU4が動作中であり、一部のXBポートが停止している。したがって、XBBOX#80及びXBBOX#81の環境判定部32bは、電源投入パターンをパターン#3と判定する。
また、BB#0及びBB#1は、BB6とXBU9が動作中であり、全部のXBポートが動作している。したがって、BB#0及びBB#1の環境判定部32bは、BB6を診断の対象外と判定する。また、BB#2〜BB#4は、停止している。したがって、BB#2〜BB#4の環境判定部32bは、電源投入パターンをパターン#1と判定する。
次に、診断専用の電源投入処理のフローについて図26〜図28を用いて説明する。なお、ここでは、BB6の診断電源投入部33aの処理について説明する。また、図26〜図28において、「PSU(XBBOX)」等は、XBBOX2によるXBBOX2のPSU等に対する動作を示し、「PSU(BB)」等はBB6によるBB6のPSU等に対する動作を示す。また、PSUは、電源装置(Power Supply Unit)であり、FANはファンである。
図26は、パターン#1の場合の診断専用の電源投入処理のフローを示すフローチャートである。パターン#1の対象となるBB6は、パーティション61に組み込まれていないBB6、パーティション61が電源切断されているBB6、又は故障や動的再構成によってパーティション61から切り離されているBB6である。
図26に示すように、BB6の診断電源投入部33aは、XBBOX2がオンであるか否かを判定し(ステップS31)、XBBOX2がオンである場合には、ステップS36へ進む。一方、XBBOX2がオンでない場合には、BB6の診断電源投入部33aは、XBBOX2の診断電源投入部33aに電源の投入を指示し、XBBOX2の診断電源投入部33aがPSUの電源を投入する(ステップS32)。
そして、XBBOX2の診断電源投入部33aは、FANの電源を投入し(ステップS33)、XBU4の電源を投入する(ステップS34)。そして、XBBOX2の診断電源投入部33aは、XBU4を初期化する(ステップS35)。
そして、XBBOX2の診断電源投入部33aは、ポート情報記憶部41にポート種別として診断ポートを設定し(ステップS36)、XBポートを初期化する(ステップS37)。
そして、BB6の診断電源投入部33aは、PSUの電源を投入し(ステップS38)、FANの電源を投入する(ステップS39)。そして、BB6の診断電源投入部33aは、XBU9の電源を投入し(ステップS40)、テストモジュール42を初期化する(ステップS41)。そして、BB6の診断電源投入部33aは、ポート情報記憶部41にポート種別として診断ポートを設定し(ステップS42)、XBポートを初期化する(ステップS43)。
図27は、パターン#2の場合の診断専用の電源投入処理のフローを示すフローチャートである。パターン#2の対象となるBB6は、パーティション61に組み込まれて稼働中であり、かつ、(パーティション61が1ビルディングブロック構成である、又は、冗長化された一方のXBU9が停止してXBU9が片側停止である)BB6である。
図27に示すように、BB6の診断電源投入部33aは、XBBOX2がオンであるか否かを判定し(ステップS51)、XBBOX2がオンである場合には、ステップS56へ進む。一方、XBBOX2がオンでない場合には、BB6の診断電源投入部33aは、XBBOX2の診断電源投入部33aに電源の投入を指示し、XBBOX2の診断電源投入部33aがPSUの電源を投入する(ステップS52)。
そして、XBBOX2の診断電源投入部33aは、FANの電源を投入し(ステップS53)、XBU4の電源を投入する(ステップS54)。そして、XBBOX2の診断電源投入部33aは、XBU4を初期化する(ステップS55)。
そして、XBBOX2の診断電源投入部33aは、ポート情報記憶部41にポート種別として診断ポートを設定し(ステップS56)、XBポートを初期化する(ステップS57)。
そして、BB6の診断電源投入部33aは、XBU9の電源を投入し(ステップS58)、ポート情報記憶部41にポート種別として診断ポートを設定し(ステップS59)、XBポートを初期化する(ステップS60)。
図28は、パターン#3の場合の診断専用の電源投入処理のフローを示すフローチャートである。パターン#3の対象となるBB6は、パーティション61に組み込まれて稼働中であり、かつ、パーティション61が複数ビルディングブロック構成であり、かつ、稼働中のXBU9に一部のポート43が停止中であるBB6である。
図28に示すように、BB6の診断電源投入部33aは、XBBOX2の診断電源投入部33aにポート情報の設定を指示し、XBBOX2の診断電源投入部33aが、ポート情報記憶部41にポート種別として診断ポートを設定し(ステップS71)、XBポートを初期化する(ステップS72)。
そして、XBBOX2の診断電源投入部33aは、停止しているXBポートのポート情報記憶部41にポート種別として診断ポートを設定し(ステップS73)、XBポートを初期化する(ステップS74)。
このように、診断電源投入部33aが、電源投入パターンに基づいて診断対象の電源を投入することによって、情報処理システム1は、ユーザに使用されていない装置を対象としてクロスバー診断を行うことができる。
次に、ポート情報の設定例について図29〜図32を用いて説明する。図29〜図32は、ポート情報の設定例#1〜#4を示す図である。なお、図29及び図30では、4台のビルディングブロック6によるビルディングブロック構成の場合について説明する。また、各ビルディングブロック6は、2台のXBU9を有し、他の全てのビルディングブロック6と二重化接続されている。
図31及び図32では、2台のクロスバーボックス2と5台のビルディングブロック6によるクロスバーボックス構成の場合について説明する。また、各ビルディングブロック6は、2台のXBU9を有し、2台のクロスバーボックス2に接続されている。また、各XBU9は、1つのポート43を有する。
また、図29〜図32の表において、BBIDはビルディングブロック6又はクロスバーボックス2を識別する番号である。接続先BBIDは、接続先のビルディングブロック6又はクロスバーボックス2の番号である。「x/y」は、XBU#0の設定値/XBU#1の設定値を表す。また、接続先のXBUの番号は、接続元のXBUの番号と同じ番号が設定される。
図29において、BB#0、BB#1及びBB#3は動作中であり、BB#2は停止中である。BB#0、BB#1及びBB#3は1つのパーティション61を構成する。また、ここではCMI機能は無効とする。このため、BB#0とBB#1のクロスバー通信、BB#0とBB#3のクロスバー通信、及び、BB#1とBB#3のクロスバー通信がユーザ使用中の状態にある。
この場合、図29の表に示すように、BB#0、BB#1及びBB#3のポート43のうち、BB#2に接続されるポート43のポート種別が診断ポート/診断ポートと設定される。例えば、BB#0のポート#1は、BB#2に接続されており、ユーザ使用中でないので、ポート種別が診断ポート/診断ポートと設定される。また、BB#2は停止中なので、全ポート#0〜#2のポート種別が診断ポート/診断ポートと設定される。
図30において、BB#0、BB#1及びBB#3は動作中であり、BB#2は停止中である。BB#0、BB#1及びBB#3のXBU#0は動作中であり、BB#0、BB#1及びBB#3のXBU#1は停止中である。BB#0、BB#1及びBB#3はそれぞれ単独でパーティション61を構成する。また、ここではCMI機能は有効とする。このため、BB#0とBB#1のクロスバー通信、BB#0とBB#3のクロスバー通信、及び、BB#1とBB#3のクロスバー通信の片側がユーザ使用中の状態にある。
この場合、図30の表に示すように、BB#0、BB#1及びBB#3のポートのうち、BB#2に接続されるポートのポート種別が診断ポート/診断ポートと設定され、他のBB6に接続されるポートのXBU#1のポート種別が診断ポートと設定される。例えば、BB#0のポート#0は、BB#1に接続されており、XBU#1はユーザ使用中でないので、ポート種別が診断ポートと設定される。また、BB#2は停止中なので、全ポート#0〜#2のポート種別が診断ポート/診断ポートと設定される。
図31において、XBBOX#80は動作中であり、XBBOX#81は停止中である。BB#0及びBB#1は動作中であり、BB#2〜BB#4は停止中である。BB#0及びBB#1のXBU#0は動作中であり、BB#0及びBB#1のXBU#1は停止中である。BB#0〜BB#4はXBBOX#80及びXBBOX#81のポート#0〜ポート#4にそれぞれ接続される。BB#0及びBB#1は、パーティション61を構成する。また、ここではCMI機能は無効とする。このため、BB#0のXBU#0とXBBOX#80のXBU4とのクロスバー通信、及び、BB#1のXBU#0とXBBOX#80のXBU4のクロスバー通信がユーザ使用中の状態にある。
この場合、図31の表に示すように、XBBOX#80のポート#2〜ポート#4が診断ポートと設定され、XBBOX#81の全ポートが診断ポートと設定される。また、BB#0及びBB#1のポート#0が通常ポート/診断ポートと設定され、BB#2〜BB#4のポート#0が診断ポート/診断ポートと設定される。
図32において、XBBOX#80及びXBBOX#81は動作中である。BB#0及びBB#1は動作中であり、BB#2〜BB#4は停止中である。BB#0及びBB#1のXBU#0は動作中であり、BB#0及びBB#1のXBU#1も動作中である。BB#0〜BB#4はXBBOX#80及びXBBOX#81のポート#0〜ポート#4にそれぞれ接続される。BB#0及びBB#1は、それぞれ単独でパーティション61を構成する。また、ここではCMI機能は有効とする。このため、BB#0のXBU#0とXBBOX#80のXBU4とのクロスバー通信、及び、BB#1のXBU#0とXBBOX#80のXBU4のクロスバー通信がユーザ使用中の状態にある。また、BB#0のXBU#1とXBBOX#81のXBU4とのクロスバー通信、及び、BB#1のXBU#1とXBBOX#81のXBU4のクロスバー通信がユーザ使用中の状態にある。
この場合、図32の表に示すように、XBBOX#80及びXBBOX#81のポート#2〜ポート#4が診断ポートと設定される。また、BB#2〜BB#4のポート#0が診断ポート/診断ポートと設定される。
次に、XBケーブルテストの処理フローについて説明する。図33は、XBケーブルテストの処理フローを示すフローチャートである。図33に示すように、送信元のXBケーブルテスト部42aは、送信データを作成し(ステップS81)、送信先の診断ポートにデータを送信する(ステップS82)。ここで、送信データには、BBIDとXBU番号とポート番号が含まれる。
そして、送信先のXBケーブルテスト部42aが、ポート43を経由してデータを受信する(ステップS83)。そして、送信先のXBケーブルテスト部42aは、データを受信した受信ポート43から接続先情報を取得し(ステップS84)、受信データと接続先情報を比較する(ステップS85)。
そして、送信先のXBケーブルテスト部42aは、受信データと接続先情報が不一致か否かを判定し(ステップS86)、不一致の場合には、XBケーブル20の接続誤りをXSCFに報告する(ステップS87)。
このように、XBケーブルテスト部42aがXBケーブルテストを行うことによって、CPU81及びメモリ82を使用することなくクロスバー診断を行うことができる。
次に、XBポートテストの処理フローについて説明する。図34は、XBポートテストの処理フローを示すフローチャートである。図34に示すように、送信元のXBポートテスト部42bは、ダミーデータを作成し(ステップS91)、送信先の診断ポートにデータを送信する(ステップS92)。ダミーデータとしては、例えば16進数の0x55555555が用いられる。
そして、送信元のXBポートテスト部42bは、データの受信を待ち(ステップS93)、タイムアウトか否かを判定する(ステップS94)。その結果、送信元のXBポートテスト部42bは、タイムアウトでない場合には、ステップS93に戻り、タイムアウトの場合には、XB通信の異常をXSCFに報告する(ステップS95)。
一方、送信先のXBポートテスト部42bは、データを受信する(ステップS96)と、受信ポートからデータを返信する(ステップS97)。そして、送信元のXBポートテスト部42bが返信されたデータを受信し(ステップS98)、ダミーデータと受信データを比較する(ステップS99)。
そして、送信元のXBポートテスト部42bは、ダミーデータと受信データが不一致か否かを判定し(ステップS100)、不一致の場合には、XB通信の異常をXSCFに報告する(ステップS101)。
このように、XBポートテスト部42bがXBポートテストを行うことによって、CPU81及びメモリ82を使用することなくクロスバー診断を行うことができる。
次に、クロスバー診断の例について図35〜図38を用いて説明する。図35及び図36は、それぞれ正常の場合とエラー検出の場合のXBケーブルテストの例であり、図37及び図38は、それぞれ正常の場合とエラー検出の場合のXBポートテストの例である。
図35、図37及び図38では、BB#0のXBU9のポート#0とBB#1のXBU9のポート#0がクロスバーケーブル20で正しく接続されている。一方、図36では、BB#0のXBU9のポート#0とBB#1のXBU9のポート#1がクロスバーケーブル20で誤って接続されている。BB#0のポート#0のポート情報記憶部41には、接続先としてBB#1とポート#0が記憶され、BB#1のポート#0のポート情報記憶部41には、接続先としてBB#0とポート#0が記憶される。なお、図35〜図38は、ビルディングブロック6が1台のXBU9を有する場合を示し、接続先としてXBU番号が省略されている。
図35に示すように、BB#0のテストモジュール42は、自装置のポートを識別する情報としてBB#0とポート#0から送信データを作成し、BB#1のポート#0に送信する。そして、BB#1のテストモジュール42がポート#0が受信したデータとポート#0の接続先を比較する。このケースでは、両者が一致しているので、BB#1のテストモジュール42はテスト結果をOKとする。
一方、図36に示すように、クロスバーケーブル20が誤ってBB#1のポート#1に接続されている場合には、BB#1のテストモジュール42がポート#1が受信したデータとポート#1の接続先を比較すると、両者は一致しない。したがって、BB#1のテストモジュール42はXBケーブルの接続誤りを報告する。
また、図37に示すように、BB#0のテストモジュール42は、ダミーデータ0x55555555をBB#1のテストモジュール42へ送信し、BB#1のテストモジュール42はデータを折り返し返信する。そして、BB#0のテストモジュール42は、送信データと受信データを比較する。このケースでは、両者が一致しているので、BB#0のテストモジュール42はテスト結果をOKとする。
一方、図38に示すように、BB#0のテストモジュール42が送信したデータにデータ化けが発生すると、BB#1のテストモジュール42は、異なるデータ0x55553555を折り返し返信する。そして、BB#0のテストモジュール42は、送信データと受信データを比較すると、両者は一致しない。したがって、BB#0のテストモジュール42はXB通信の異常を報告する。
図39は、診断の実行例を示す図である。図39において、「XSCF> diagxbu 0-3」は、BB#0〜BB#3を対象とするクロスバー診断の指示を示す。「XBU diagnosis is about to start, Continue?[y|n] :y」は、クロスバー診断の実行の確認に対する実行指示を示す。「Power on sequence started.」は診断用に電源投入処理が開始したことを示す。「XBU diagnosis started.」は、クロスバー診断が開始したことを示す。「Power off sequence started.」は診断用に投入した電源を切断する処理が開始したことを示す。次の「completed.」は、クロスバー診断が終了したことを示す。
図40は、エラーログの例を示す図である。図40は、XB通信の異常とXBケーブルの接続誤りを1例ずつ示す。XB通信の異常では、BB#4のXBU#1とBB#0のXBU#1とを接続するクロスバーケーブル20で異常が発生したことが記録されている。XBケーブルの接続誤りでは、XBBOX#80のXBU#0とBB#0のXBU#0のケーブル接続に誤りがあることが記録されている。
上述してきたように、実施例では、XSCFのハード制御部33がXBUにクロスバー診断の指示を出す。XBUは、ポート情報記憶部41とテストモジュール42を有し、ポート情報記憶部41にポート情報を記憶し、テストモジュール42が、ポート情報を用いてクロスバー診断を行う。したがって、情報処理システム1は、CPU81とメモリ82を使用することなくクロスバー診断を行うことができ、情報処理システム1の運用を継続したままクロスバー診断を行うことができる。
また、実施例では、構成判定部32が、ユーザの使用環境からクロスバー診断の範囲を特定し、特定した診断範囲に基づいて、診断専用の電源投入パターンを判定する。そして、ハード制御部33が、電源投入パターンに基づいて電源を投入する。したがって、情報処理システム1は、診断に必要な装置を動作させてクロスバー診断を行うことができる。
また、実施例では、構成判定部32が、特定した診断範囲に基づいてポート情報を作成し、ハード制御部33が、XBUのポート情報記憶部41にポート情報を設定する。したがって、情報処理システム1は、診断に必要な情報を設定してクロスバー診断を行うことができる。
また、実施例では、XSCFの記憶部がパーティション構成情報、パーティション稼働情報及びCMI情報を記憶し、構成判定部32は、パーティション構成情報、パーティション稼働情報及びCMI情報に基づいてクロスバー診断の範囲を特定する。したがって、構成判定部32は、ユーザの使用環境に影響を与えない診断範囲を正しく特定することができる。
また、実施例では、構成判定部32は、自装置全体、XBU、ポート43のいずれを診断対象とするかに基づいて、電源投入パターンを判定する。したがって、ハード制御部33は、XBU及びポート43が部分的に使用されている場合に、ユーザの使用環境に影響を与えないで診断用に電源投入を行うことができる。
また、実施例では、XBUは、ポート43毎にポート情報記憶部41を備え、1つのテストモジュール42が全てのポート43を対象にクロスバー診断を行う。したがって、ポート43毎にテストモジュール42を備える場合と比較して、XBUはハードウェア量を少なくすることができる。
なお、実施例では、XSCFについて説明したが、XSCFが有する構成をソフトウェアによって実現することで、同様の機能を有する診断プログラムを得ることができる。そこで、診断プログラムを実行するコンピュータについて説明する。
図41は、実施例に係る診断プログラムを実行するコンピュータのハードウェア構成を示す図である。図41に示すように、コンピュータ100は、MPU(Micro Processing Unit)101と、フラッシュメモリー102と、RAM103とを有する。
MPU101は、RAM103に記憶されたプログラムを読み出して実行する演算処理装置である。フラッシュメモリー102は、プログラムやデータを記憶する不揮発性の記憶装置である。RAM103は、プログラムやプログラムの実行途中結果などを記憶するメモリであり、XSCFの記憶部の情報を記憶する。そして、フラッシュメモリー102に記憶された診断プログラムは、RAM103に読み出されてMPU101によって実行される。
1 情報処理システム
2 クロスバーボックス(XBBOX)
3 XSCF
3a 記憶部
3b 制御部
4 XBU(クロスバーユニット)
6 ビルディングブロック(BB)
7 XSCF
7a 記憶部
7b 制御部
8 システムボード
9 XBU(クロスバーユニット)
10 ユーザ端末
11 LAN
12 内部LAN
20 クロスバーケーブル(XBケーブル)
30a パーティション構成情報
30b パーティション稼働情報
30c CMI情報
31 診断部
32 構成判定部
32a 妥当性判定部
32b 環境判定部
33 ハード制御部
33a 診断電源投入部
34 RAS制御部
35 BB間通信部
41 ポート情報記憶部
42 テストモジュール
42a XBケーブルテスト部
42b XBポートテスト部
43 ポート
61 パーティション
62 ユーザ環境パーティション
63 診断用パーティション
66,67 診断範囲
81 CPU
82 メモリ
82a 共有メモリ
100 コンピュータ
101 MPU
102 フラッシュメモリー
103 RAM

Claims (8)

  1. 自装置を制御する制御部と、他の情報処理装置と通信を行うクロスバー部と、を有する情報処理装置において、
    前記制御部は、
    前記クロスバー部に対してクロスバー診断を指示する指示部を備え、
    前記クロスバー部は、
    クロスバー診断に関する診断情報を記憶した診断情報記憶部と、
    前記診断情報記憶部に記憶された診断情報に基づいてクロスバー診断を行う診断部と
    を備えたことを特徴とする情報処理装置。
  2. 前記制御部は、
    クロスバー診断の対象範囲を特定する特定部と、
    前記特定部により特定された対象範囲の電源投入を行う投入部と
    をさらに備えたことを特徴とする請求項1に記載の情報処理装置。
  3. 前記制御部は、
    前記特定部により特定された対象範囲に基づいて前記診断情報を作成する作成部と、
    前記作成部により作成された診断情報を前記診断情報記憶部に設定する設定部と
    をさらに備えたことを特徴とする請求項2に記載の情報処理装置。
  4. 前記制御部は、
    当該情報処理装置が使用される装置として割り当てられているか否かを示す情報と、当該情報処理装置の電源が投入されているか否かを示す情報と、他の情報処理装置との間でメモリの共有が行われているか否かを示す情報を記憶する制御情報記憶部をさらに備え、
    前記特定部は、前記制御情報記憶部が記憶する情報に基づいてクロスバー診断の対象範囲を特定することを特徴とする請求項2又は3に記載の情報処理装置。
  5. 複数のクロスバー部を有し、各クロスバー部は複数のポートを有し、
    前記特定部は、クロスバー診断の対象範囲として、当該情報処理装置、特定のクロスバー部又は特定のポートを特定することを特徴とする請求項2、3又は4に記載の情報処理装置。
  6. 前記クロスバー部は、複数のポートを備えてポート毎に前記診断情報記憶部を有し、
    前記診断部は、複数のポートを対象としてクロスバー診断を行うことを特徴とする請求項1〜5のいずれか1つに記載の情報処理装置。
  7. 情報処理装置を制御する制御部と、他の情報処理装置の処理部と通信を行うクロスバー部とを有する当該情報処理装置の診断方法において、
    前記制御部が前記クロスバー部に対してクロスバー診断を指示し、
    前記クロスバー部がクロスバー診断に関して記憶部に記憶した診断情報に基づいてクロスバー診断を行う
    ことを特徴とする診断方法。
  8. 情報処理装置を制御する制御部と、他の情報処理装置の処理部と通信を行うクロスバー部とを有する当該情報処理装置のクロスバー診断を行う診断プログラムにおいて、
    コンピュータに、
    クロスバー診断の対象範囲を特定し、
    特定した対象範囲のクロスバー診断を前記クロスバー部に指示する
    処理を実行させることを特徴とする診断プログラム。
JP2014243500A 2014-12-01 2014-12-01 情報処理装置、診断方法及び診断プログラム Expired - Fee Related JP6550733B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014243500A JP6550733B2 (ja) 2014-12-01 2014-12-01 情報処理装置、診断方法及び診断プログラム
US14/926,407 US9690647B2 (en) 2014-12-01 2015-10-29 Information processing apparatus and method of diagnosis

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014243500A JP6550733B2 (ja) 2014-12-01 2014-12-01 情報処理装置、診断方法及び診断プログラム

Publications (2)

Publication Number Publication Date
JP2016105262A true JP2016105262A (ja) 2016-06-09
JP6550733B2 JP6550733B2 (ja) 2019-07-31

Family

ID=56094430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014243500A Expired - Fee Related JP6550733B2 (ja) 2014-12-01 2014-12-01 情報処理装置、診断方法及び診断プログラム

Country Status (2)

Country Link
US (1) US9690647B2 (ja)
JP (1) JP6550733B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242520A (ja) * 1999-02-19 2000-09-08 Nec Eng Ltd マルチノードコンピュータシステムおよび障害発生原因箇所特定方法
WO2008099453A1 (ja) * 2007-02-09 2008-08-21 Fujitsu Limited 縮退方法および情報処理装置
JP2012150699A (ja) * 2011-01-20 2012-08-09 Nec Corp 故障検出装置、故障検出方法、及び、故障検出プログラム
JP2012155419A (ja) * 2011-01-24 2012-08-16 Fujitsu Ltd 検証支援具、検証装置、検証方法、および検証プログラム
JP2013026827A (ja) * 2011-07-21 2013-02-04 Renesas Electronics Corp マイクロコントローラ、制御装置、及び判別方法
JP2014138369A (ja) * 2013-01-18 2014-07-28 Nakayo Telecommun Inc Ip機器診断機能を有するip中継装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321813A (en) 1991-05-01 1994-06-14 Teradata Corporation Reconfigurable, fault tolerant, multistage interconnect network and protocol
JP3794151B2 (ja) * 1998-02-16 2006-07-05 株式会社日立製作所 クロスバースイッチを有する情報処理装置およびクロスバースイッチ制御方法
US6856600B1 (en) * 2000-01-04 2005-02-15 Cisco Technology, Inc. Method and apparatus for isolating faults in a switching matrix
JP3988146B2 (ja) * 2004-07-27 2007-10-10 日本電気株式会社 マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム
US8000322B2 (en) * 2004-07-30 2011-08-16 Hewlett-Packard Development Company, L.P. Crossbar switch debugging
US7895300B1 (en) * 2008-02-28 2011-02-22 Qlogic, Corporation Systems and methods for testing device ports in a storage area network
JP5030852B2 (ja) 2008-04-26 2012-09-19 三菱電機株式会社 機器管理装置及び機器管理方法及びプログラム
WO2012127629A1 (ja) * 2011-03-22 2012-09-27 富士通株式会社 サーバシステム及びクロスバボードの活性保守方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242520A (ja) * 1999-02-19 2000-09-08 Nec Eng Ltd マルチノードコンピュータシステムおよび障害発生原因箇所特定方法
WO2008099453A1 (ja) * 2007-02-09 2008-08-21 Fujitsu Limited 縮退方法および情報処理装置
JP2012150699A (ja) * 2011-01-20 2012-08-09 Nec Corp 故障検出装置、故障検出方法、及び、故障検出プログラム
JP2012155419A (ja) * 2011-01-24 2012-08-16 Fujitsu Ltd 検証支援具、検証装置、検証方法、および検証プログラム
JP2013026827A (ja) * 2011-07-21 2013-02-04 Renesas Electronics Corp マイクロコントローラ、制御装置、及び判別方法
JP2014138369A (ja) * 2013-01-18 2014-07-28 Nakayo Telecommun Inc Ip機器診断機能を有するip中継装置

Also Published As

Publication number Publication date
US9690647B2 (en) 2017-06-27
JP6550733B2 (ja) 2019-07-31
US20160162347A1 (en) 2016-06-09

Similar Documents

Publication Publication Date Title
KR101570175B1 (ko) Pcie 스위치 기반의 서버 시스템, 스위칭 방법 및 장치
US7787388B2 (en) Method of and a system for autonomously identifying which node in a two-node system has failed
JP6409229B2 (ja) 複数のモジュールを備えるサーバ
US8417774B2 (en) Apparatus, system, and method for a reconfigurable baseboard management controller
US9722859B2 (en) Evaluation of field replaceable unit dependencies and connections
US11226753B2 (en) Adaptive namespaces for multipath redundancy in cluster based computing systems
US20150178095A1 (en) Synchronous bmc configuration and operation within cluster of bmc
US7599392B2 (en) Devices and methods for matching link speeds between controllers and controlled devices
JP5460188B2 (ja) Sasワイドポート接続のためのレーンの指定
US20100064060A1 (en) SAS Paired subtractive routing
US8244948B2 (en) Method and system for combining multiple SAS expanders into a SAS switch
US20140067771A2 (en) Management of a Scalable Computer System
CN114546283A (zh) 一种存储设备存储链路端口管理方法、装置及存储介质
CN109542834B (zh) 一种确定nc芯片连接错误的方法及nc芯片
JP6550733B2 (ja) 情報処理装置、診断方法及び診断プログラム
EP3764234B1 (en) Method and enable apparatus for starting physical device
US8954639B2 (en) Integrated link calibration and multi-processor topology discovery
US7627774B2 (en) Redundant manager modules to perform management tasks with respect to an interconnect structure and power supplies
CN110677509B (zh) 一种适用于高性能计算机的地址自动配置系统
US7529963B2 (en) Cell boundary fault detection system
CN108021476B (zh) 一种互联接口的测试方法、装置和计算设备
JP2019121338A (ja) 機器ラック及び機器ラックからの状態報告を保証する方法
US7826379B2 (en) All-to-all sequenced fault detection system
TWI530782B (zh) 伺服器
JP6671247B2 (ja) 通信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180814

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190326

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190424

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: 20190604

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190617

R150 Certificate of patent or registration of utility model

Ref document number: 6550733

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees