JP5151500B2 - コンピュータシステム、障害処理方法および障害処理プログラム - Google Patents

コンピュータシステム、障害処理方法および障害処理プログラム Download PDF

Info

Publication number
JP5151500B2
JP5151500B2 JP2008009652A JP2008009652A JP5151500B2 JP 5151500 B2 JP5151500 B2 JP 5151500B2 JP 2008009652 A JP2008009652 A JP 2008009652A JP 2008009652 A JP2008009652 A JP 2008009652A JP 5151500 B2 JP5151500 B2 JP 5151500B2
Authority
JP
Japan
Prior art keywords
host
data
lanes
peripheral device
host bridge
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.)
Expired - Fee Related
Application number
JP2008009652A
Other languages
English (en)
Other versions
JP2009169854A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2008009652A priority Critical patent/JP5151500B2/ja
Publication of JP2009169854A publication Critical patent/JP2009169854A/ja
Application granted granted Critical
Publication of JP5151500B2 publication Critical patent/JP5151500B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明はコンピュータシステムにおいてデータの転送を行うバスに関し、特に該バスにおいて障害が発生した場合の処理に関する。
PCI Expressは、2002年にPCI−SIGによって策定された、PCIバスに代わるパソコン向けシリアル転送インターフェースである。PCI Expressで用いられる最小構成の伝送路はレーンと呼ばれ、1ポートがこのレーンを複数本束ねて構成されることが一般的である。
PCI Express 1.1では、1レーンは片方向2.0Gbps、双方向4.0Gbps(いずれも実効速度)の全二重通信が可能である。複数本のレーンを束ねたポートにおける通信速度は、1レーンの通信速度に該ポートで束ねられたレーンの本数を乗算した値になる。なお、2007年1月に発表されたPCI Express 2.0では、1レーンあたりの通信速度はPCI Express 1.1の2倍に高められている。
1レーンで構成されたPCI Expressポートを「PCI Express x1」、2レーンのポートを「x2」というように呼称する。現在ではx2、x4、x8、x12、x16、x32などの製品が登場している。x16では通信速度が片方向32Gbps、x32では片方向64Gbpsとなる。
PCI Expressバスは、転送効率を上げるため、リクエスタがコンプリタに対しリクエストを発行すると、一旦トランザクションを終了し、リクエストを受けたコンプリタがデータを準備できた時点で、コンプリタがトランザクションを開始しデータ転送をするスプリットトランザクション方式が採用されている。また、リクエスタは、発行したトランザクションの完了を待たずに次々とリード要求を発行し、リクエストに対するリプライデータの転送準備が完了したコンプリタから順番にデータを受け取ることができるリラックスオーダリングと呼ばれる機能が実装されている。
このPCI Expressバスで障害が発生すると、その時点で致命的エラーとして処理され、必要であればレジスタ情報が採取され、システムの再起動により装置の復旧が行われていた。また、高信頼性が要求されるシステムでは、PCIバスを冗長構成とし、障害が発生したときは、デバイスドライバによるソフトウェア制御により障害パスの閉塞、および冗長パスへの切り替えによりリカバリが行われていた。
なお、コンピュータ内部において障害が発生した際のリカバリ、特にPCI Expressなどのようなコンピュータ内部のバスにおいて障害が発生した際のリカバリについては、以下のような文献がある。特許文献1には、コンピュータ起動時の自己診断(POST)の際に発生したハードウェアのエラーを記録して表示する方法が記載されている。特許文献2には、データ転送中にエラーが発生した場合に未完了のデータ転送を延期して再送させる方法が記載されている。
特許文献3には、PCI Expressにおいて入出力バスが閉塞された場合にデータ転送を一時中止させ、ポート番号の再設定を実行した後に該データ転送を再開させるという技術が記載されている。特許文献4には、チップセットのバッファ内で保留にされているトランザクションが所定の量を超えた場合にプロセッサが節電状態から脱するという技術が記載されている。
特開2001−331342号公報 特開2004−326151号公報 特開2006−195821号公報 特表2007−517332号公報
しかしながら、これまでのPCI Expressバスで障害が発生した場合、前述のスプリットトランザクションおよびリラックスオーダリングの機能により発行されてデータ転送が未完了となっているトランザクションは、障害の発生したパスが閉塞されることにより全て破棄されるという問題がある。
特にPCI Expressバスが冗長構成である場合、障害が発生してパスの閉塞および切り替えが発生した時に破棄されたトランザクションをリカバリするためには、上位のデバイスドライバからリトライを行う必要がある。このデバイスドライバによるリカバリ処理は、ソフトウェア制御によるパス閉塞から冗長パスへ切り替えが行われ、さらにソフトウェア制御によるリトライ処理(破棄されたトランザクションに係る未転送のデータの再送)が行われるため、障害発生から復旧までにある程度の時間が必要である。
ちなみに前述の特許文献1〜4においては、いずれもこの場合には未転送のデータを破棄してリトライする必要が生じるので、上記の問題を解決できない。
本発明の目的は、複数のレーンによって構成される複数のバスによって同一のデバイスに接続されるコンピュータシステムにおいて、バス障害が発生した場合において未転送のデータを破棄せず、迅速にリカバリ処理を行うことのできるコンピュータシステム、障害処理方法および障害処理プログラムを提供することにある。
上記目的を達成するため、本発明に係るコンピュータシステムは、上位に接続された演算処理装置から発行されたリード要求に応じて周辺装置にデータ転送要求を発行するホストブリッジと、周辺装置と各々複数のレーンを介して接続され、ホストブリッジと周辺装置との間を中継する第1および第2のホストバスアダプタと、第1および第2のホストバスアダプタと各々接続された第1および第2のポートを有するスイッチ装置とを有するコンピュータシステムであって、ホストブリッジは、周辺装置との間で第1のポートを介してデータ転送が行われている間、複数のレーンの各々に対して、第1のホストバスアダプタに対する通信が可能であるか否かを判断することによってレーンが正常であるか否かを判断するヘルスチェック機能と、第1のポートの複数のレーンのうちのいずれかに通信エラーが発生した場合に、複数のレーンのうち正常であるレーンを使用してデータ転送における転送未完了のデータを受信する未完了データ処理機能と、転送未完了のデータの受信が完了した後、ホストブリッジと周辺装置との間の中継を第1のホストバスアダプタから第2のホストバスアダプタに切り替えるバス切り替え機能とを有することを特徴とする。
上記目的を達成するため、本発明に係る障害処理方法は、上位に接続された演算処理装置から発行されたリード要求に応じて周辺装置にデータ転送要求を発行するホストブリッジと、周辺装置と各々複数のレーンを介して接続され、ホストブリッジと周辺装置との間を中継する第1および第2のホストバスアダプタと、第1および第2のホストバスアダプタと各々接続された第1および第2のポートを有するスイッチ装置とを有するコンピュータシステムにおいて通信エラーが発生した場合の障害処理方法であって、ホストブリッジが周辺装置にデータ転送要求を発行する転送要求工程と、周辺装置がデータ転送要求に反応して、第1のホストバスアダプタおよび第1のポートを介してホストブリッジにデータを転送するデータ転送工程と、データ転送工程が行われている間、複数のレーンの各々に対して、第1のホストバスアダプタに対する通信が可能であるか否かを判断することによってレーンが正常であるか否かを判断するヘルスチェック工程と、データ転送工程が行われている間に第1のポートの複数のレーンのうちのいずれかに通信エラーが発生した場合に、ホストブリッジが複数のレーンのうち正常であるレーンを使用してデータ転送における転送未完了のデータを受信する未完了データ処理工程と、転送未完了のデータの受信が完了した後、ホストブリッジと周辺装置との間の中継を第1のホストバスアダプタから第2のホストバスアダプタに切り替えるバス切り替え工程とを有することを特徴とする。
上記目的を達成するため、本発明に係る障害処理プログラムは、上位に接続された演算処理装置から発行されたリード要求に応じて周辺装置にデータ転送要求を発行するホストブリッジと、周辺装置と各々複数のレーンを介して接続され、ホストブリッジと周辺装置との間を中継する第1および第2のホストバスアダプタと、第1および第2のホストバスアダプタと各々接続された第1および第2のポートを有するスイッチ装置とを有するコンピュータシステムにおいて、ホストブリッジが備えるコンピュータに、周辺装置にデータ転送要求を発行する転送要求処理と、データ転送要求に反応した周辺装置から、第1のホストバスアダプタおよび第1のポートを介してデータを受信するデータ転送処理と、データ転送処理が行われている間、複数のレーンの各々に対して、第1のホストバスアダプタに対する通信が可能であるか否かを判断することによってレーンが正常であるか否かを判断するヘルスチェック処理と、データ転送処理が行われている間に第1のポートの複数のレーンのうちのいずれかに通信エラーが発生した場合に、複数のレーンのうち正常であるレーンを使用してデータ転送における転送未完了のデータを受信する未完了データ処理と、転送未完了のデータの受信が完了した後、ホストブリッジと周辺装置との間の中継を第1のホストバスアダプタから第2のホストバスアダプタに切り替えるバス切り替え処理とを実行させることを特徴とする。
本発明は、未転送のデータを障害の発生していないレーンを介して転送するように構成したので、データを破棄する必要がなくなる。これによって、データを破棄せず、迅速にリカバリ処理を行うことのできるという、従来にない優れたコンピュータシステム、障害処理方法および障害処理プログラムを提供することができる。
図1は、本発明の実施の形態に係るコンピュータシステム1の構成を示すブロック図である。CPU11は、コンピュータシステム1の中枢機能を担う演算処理装置で、OS、BIOS、アプリケーションプログラムなどを実行する。ホストブリッジ12は、CPU11とPCI Expressバス10との間を接続するルートコンプレックス(Root Complex)である。
PCI Expressバス10は、PCI Expressスイッチ13を介して4つのポート21a〜d(ポートA〜D)に接続される。各々のポート21a〜dはx8レーン、つまりレーン0〜レーン7の8本のレーンによって構成される。そのうちのポート21a(ポートA)が、PCI Expressバス10を介してホストブリッジ12と接続される。以後この接続をバスAという。
そしてポート21c〜d(ポートC〜D)の2ポートに、各々ホストバスアダプタ(Host Bus Adopter、以後HBAという)14〜15が接続される。HBA14〜15は、PCI Expressバス10のエンドポイント(End Point)をなす。
HBA14〜15は各々、自らが送信待ちの状態であるか否かを表すサスペンドレジスタ24〜25を有する。これらのサスペンドレジスタ24〜25は、外部からリードライト可能なレジスタとしてPCIのアドレス空間に可視化されている。つまり、PCI Expressバス10に接続されるすべての機器から、リードおよびライトのいずれのアクセスも可能である。
HBA14〜15の各々を冗長パスとして、ディスク装置16が接続される。HBA14をプライマリ、HBA15をセカンダリとしている。以後、PCI Expressスイッチ13とHBA14との接続をバスBという。また、PCI Expressスイッチ13とHBA15との接続をバスCという。バスA〜バスCは各々、レーン0〜レーン7の8レーンで構成される。
CPU11は、PCI Expressの仕様により(スプリットトランザクション、リラックスオーダリングなど)ディスク装置16に対して複数のリード要求を発行することができる。CPU11から発行されたリード要求は、ホストブリッジ12で管理されている。いま、REQ1〜5の5本のリード要求が発行され、そのうちREQ1〜2は処理が完了し、各々のリード要求に対応するデータであるDATA1〜2が既にホストブリッジ12に返信されている。REQ3〜5は処理が未完了である。
一方、冗長パスのプライマリであるHBA14は、PCI Expressスイッチ13を介して受け取ったホストブリッジ12からのリード要求REQ1〜5のうち、REQ1〜2に対応するデータであるDATA1〜2は既にディスク装置16から読み出してホストブリッジ12に返信したが、REQ3〜5に対応するデータであるDATA3〜5についてはディスク装置16からのデータ読み出しが完了して送信準備ができ次第、ホストブリッジ12に送信されることになっている。
ここで、REQ3〜5に対応するDATA3〜5について、ホストブリッジ12とHBA14との間でリードトランザクションが行われていたときに、バスBに含まれるある1つのレーンで障害が発生したと想定する。PCI Expressスイッチ13は、この障害を通信エラーとして検出し、ポートC(ポート21c)において障害が発生した旨のエラーメッセージをホストブリッジ12に対して送信する。このエラーメッセージは、PCI Expressの仕様に基づき送信される。同時に、DATA3〜5を送信していたHBA14は、通信エラーによりデータ送信を完了することができないので、送信処理を異常停止する。
PCI Expressスイッチ13からエラーメッセージを受け取ったホストブリッジ12は、リカバリモードに移行する。リカバリモードに移行したホストブリッジ12は、障害が発生したPCI Expressバス10のヘルスチェックを行う。PCI Expressスイッチ13のポートC(ポート21c)からエラーメッセージを受信したので、ホストブリッジ12は、バスBの各レーンに対してヘルスチェックを行う。
ヘルスチェックは、ある1本のレーンでリンクを確立してコンフィグレーションレジスタリード命令を送信することによって行う。この命令は、HBA14のコンフィグレーションレジスタのヘッダ情報であるベンダーIDおよびデバイスIDをリードする命令である。HBA14〜15は各々、PCIバスの仕様に基づき、コンフィグレーションレジスタリード命令に反応して、コントローラチップ(図示せず)に記憶されているベンダーIDおよびデバイスIDをコンフィグレーションレジスタのヘッダ情報に含めてホストブリッジ12に返信する。
従って、コンフィグレーションレジスタリード命令に対する応答がエラーとならないことを確認することで、リンクが確立したか否かをチェックすることができる。このヘルスチェックの結果、暫定確立したレーンに問題が無かった場合、このレーンを用いて、該リードトランザクションの中断したことによって転送未完了となったデータを再送信する。
中断したデータの再送信処理は次のように行う。エラーが発生したとき、HBA14は送信処理を停止し、同時にサスペンドレジスタ24の値を1にセットする。サスペンドレジスタ24〜25の値は、通信が中断している時は1にセットされ、通常に通信が行われている時は0にセットされる。
HBA14は、サスペンドレジスタ24の値が1にセットされている間は、中断された未処理のリードデータについて送信処理を行わず、送信待ちの状態となる。ホストブリッジ12は、ヘルスチェック後に健常なある1本のレーンでリンクを暫定確立すると、このレーンを使い転送未完了データの再送処理を開始する。
ホストブリッジ12は、健常なレーンでリンクが確立した後に、HBA14のサスペンドレジスタ24の値を0にセットする。HBA14は、サスペンドレジスタ24の値が0にセットされたことを検出すると、未処理のまま中断していたリードデータDATA3〜5をホストブリッジ12に対して送信する。
ホストブリッジ12は、発行済みで未完了となっているリクエストREQ3〜5に対応するDATA3〜5が送信されたことを確認すると、障害が発生したPCI Expressスイッチ13のポートCを閉塞する。ポートCの閉塞が完了すると、ホストブリッジ12は、ディスク装置16への通信経路をポートD(バスC)に切り替え、以降のデータ転送を再開する。
図2は、図1で開示したコンピュータシステム1において行われるリカバリ動作を表すタイムチャートである。サスペンドレジスタ24の値は、この処理を開始する段階では「0」である。まず、CPU11がホストブリッジ12を介してHBA14に対してREQ1〜5のリード要求を発行し(ステップS101)、それに対してHBA14はREQ1〜2に対応するDATA1〜2がホストブリッジ12に返信する(ステップS102〜3)。
HBA14がDATA3を返信しようとした所で、バスBのレーン0において障害が発生した(ステップS104)。この段階ではREQ1〜2が完了し、REQ3〜5が未完了の状態で保留されたことになる。このことをサスペンドされたということがある。また、この段階でHBA14は、自らのサスペンドレジスタ24の値を「1」とする。
ステップS104で発生した障害を検出したPCI Expressスイッチ13は、ポートC(ポート21c)において障害が発生した旨のエラーメッセージをホストブリッジ12に対して送信する(ステップS105)。
該エラーメッセージを受信したホストブリッジ12は、リカバリモードに移行し、まずバスBのレーン0に対してリンクを確立し、ヘルスチェックのためのコンフィグレーションレジスタリード命令を発行する(ステップS106)。しかしレーン0においては障害が発生しているため、HBA14は該命令に対してベンダーID/デバイスIDを返信することができない。そこでPCI Expressスイッチ13はホストブリッジ12に対してALL−F(エラー)を返信する(ステップS107)。
再びエラーメッセージを受信したホストブリッジ12は、今度は、まずバスBのレーン1に対してリンクを確立し、ヘルスチェックのためのコンフィグレーションレジスタリード命令を発行する(ステップS108)。レーン1は正常であるので、HBA14は該命令に対してベンダーID/デバイスIDを返信する(ステップS109)。
ベンダーID/デバイスIDの返信を受けたホストブリッジ12は、これによってレーン1が正常であると判断できたので、レーン1のリンクを使って未完了のデータ転送を再開することに決定する。なお、レーンのヘルスチェックで正常か異常かを判断するときは、コンフィグレーションレジスタリード命令に対するデータが、ALL−Fかそうでないかで判断する。
ホストブリッジ12は、正常であると判断できたレーン1のリンクを介してサスペンドレジスタ24にアクセスし、サスペンドレジスタ24の値を「0」にセットして、HBA4に中断されたDATA3〜5の送信再開を指示する(ステップS110)。HBA14は、サスペンドレジスタの値が「0」に戻されたことを検出すると、DATA3〜5を送信する(ステップS111〜3)。
DATA3〜5をすべて受信したことを確認したホストブリッジ12は、PCI Expressスイッチ13のポートC(ポート21c)をリセットしてポート閉塞する(ステップS114)。そして、ディスク装置16との接続を、プライマリであるバスBから、セカンダリであるバスCに切り替える(ステップS115)。以後はバスCを介してHBA15に対してリード要求を発行し(ステップS116)、該リード要求に対応するデータを受け取る(ステップS117〜8)。
図3は、図2で示したリカバリ動作においてホストブリッジ12が行う動作を表すフローチャートである。処理を開始し、PCI Expressスイッチ13がHBA14において障害の発生を検出して送信したエラーメッセージを受信すると(ステップS201)、ホストブリッジ12はリカバリモードとなる(ステップS202)。
バスBを構成するレーンが全部でN本あり、その各々をレーン0〜レーンN−1と呼ぶものとする(Nは2以上の整数)。図1に示した例ではN=8で、バスBはレーン0〜レーン7で構成される。ホストブリッジ12は、まずn=0として(ステップS203)、レーンnに対してリンクを確立してヘルスチェックを行い(ステップS204)、レーンnが健常であるか否かを判断する(ステップS205)。
ステップS205でレーンnが健常であれば、該レーンを介してサスペンドレジスタ24の値を「0」にセットして(ステップS206)、転送未完了のデータの送信を再開させる(ステップS207)。この転送未完了のデータの送信が完了した後で、ディスク装置16との接続を、プライマリであるバスBから、セカンダリであるバスCに切り替える(ステップS210)。
ステップS205でレーンnが健常でなければ、レーン番号nがN−1に到達しているか否かを判断する(ステップS208)。n<N−1であれば、まだヘルスチェックを行っていないレーンが残っていることになるので、n=n+1として(ステップS209)、ステップS204に戻って処理を繰り返す。
ステップS208でn=N−1となれば、すべてのレーンに対してヘルスチェックを行ったが正常なレーンが存在しなかったことになるので、プライマリであるバスBを断念して、ディスク装置16との接続をセカンダリであるバスCに切り替える(ステップS210)。ここで初めて転送未完了のデータが破棄されることになる。しかし、バスBの全レーンが異常となる可能性は小さいので、多くの場合においては転送未完了のデータを破棄しないでリカバリを行うことができる。
複数のレーンのうち健常なレーンをサーチして暫定的にリンクを確立し、これを用いて中断したデータを送信させるという本実施の形態の動作は、1本のレーンしか使用しないので、全レーンが正常である場合と比べて転送速度は落ちる。しかしながら、この暫定的なリンクによるデータの転送は、転送未完了のデータの転送にのみ使用され、該データが転送された後はディスク装置16との接続がバスBからセカンダリであるバスCに切り替えられる。従って、その後のデータの転送において転送速度が落ちることはない。
また、転送未完了のデータを破棄せずに接続を切り替えることにより、上位のデバイスドライバによるリトライ処理で破棄されたデータを再送させることが不要となる。従って、リカバリにかかる時間を短縮することができる。
なお、以上の説明ではディスク装置16からのデータの読み出しという例に基づいて説明したが、実際にはディスク装置16に限らず、ホストブリッジ12側からの要求に基づいてデータを転送するデバイスに対して本実施の形態を適用できる。また、PCI Express以外にも、複数のレーンによってバスを形成するインターフェースに対して本実施の形態を適用できる。
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。
コンピュータシステムにおいてデータの転送を行うバスで、複数のレーンによってバスが形成されるものに対して適用できる。特にPCI Express規格に基づくバスに好適である。
本発明の実施の形態に係るコンピュータシステムの構成を示すブロック図である。 図1で開示したコンピュータシステムにおいて行われるリカバリ動作を表すタイムチャートである。 図2で示したリカバリ動作においてホストブリッジが行う動作を表すフローチャートである。
符号の説明
1 コンピュータシステム
10 PCI Expressバス
11 CPU
12 ホストブリッジ
13 PCI Expressスイッチ
14、15 HBA
16 ディスク装置
21a、21b、21c、21d ポート
24、25 サスペンドレジスタ

Claims (9)

  1. 上位に接続された演算処理装置から発行されたリード要求に応じて周辺装置にデータ転送要求を発行するホストブリッジと、前記周辺装置と各々複数のレーンを介して接続され、前記ホストブリッジと前記周辺装置との間を中継する第1および第2のホストバスアダプタと、前記第1および第2のホストバスアダプタと各々接続された第1および第2のポートを有するスイッチ装置とを有するコンピュータシステムであって、
    前記ホストブリッジは、
    前記周辺装置との間で前記第1のポートを介してデータ転送が行われている間、前記複数のレーンの各々に対して、前記第1のホストバスアダプタに対する通信が可能であるか否かを判断することによって前記レーンが正常であるか否かを判断するヘルスチェック機能と、
    前記第1のポートの前記複数のレーンのうちのいずれかに通信エラーが発生した場合に、前記複数のレーンのうち正常であるレーンを使用して前記データ転送における転送未完了のデータを受信する未完了データ処理機能と、
    前記転送未完了のデータの受信が完了した後、前記ホストブリッジと前記周辺装置との間の中継を前記第1のホストバスアダプタから前記第2のホストバスアダプタに切り替えるバス切り替え機能と
    を有することを特徴とするコンピュータシステム。
  2. 前記スイッチ装置は前記第1のポートを構成するレーンに異常が発生した場合に前記ホストブリッジに前記通信エラーを表すエラーメッセージを送信することを特徴とする、請求項に記載のコンピュータシステム。
  3. 前記第1のポートを構成する前記レーンの全てが異常である場合、前記ホストブリッジは前記転送未完了のデータを破棄して前記ホストブリッジと前記周辺装置との間の中継を前記第1のホストバスアダプタから前記第2のホストバスアダプタに切り替えることを特徴とする、請求項に記載のコンピュータシステム。
  4. 前記第1のホストバスアダプタが自らが送信待ちの状態であるか否かを表すサスペンドレジスタを有し、
    前記ホストブリッジは前記サスペンドレジスタを前記第1のホストバスアダプタが送信待ちでない状態を表す値に書き換えることによって前記転送未完了のデータの送信を再開させることを特徴とする、請求項に記載のコンピュータシステム。
  5. 前記複数のレーンがPCI Express規格に準拠していることを特徴とする、請求項1ないし請求項のうちいずれか1項に記載のコンピュータシステム。
  6. 上位に接続された演算処理装置から発行されたリード要求に応じて周辺装置にデータ転送要求を発行するホストブリッジと、前記周辺装置と各々複数のレーンを介して接続され、前記ホストブリッジと前記周辺装置との間を中継する第1および第2のホストバスアダプタと、前記第1および第2のホストバスアダプタと各々接続された第1および第2のポートを有するスイッチ装置とを有するコンピュータシステムにおいて通信エラーが発生した場合の障害処理方法であって、
    前記ホストブリッジが前記周辺装置にデータ転送要求を発行する転送要求工程と、
    前記周辺装置が前記データ転送要求に反応して、前記第1のホストバスアダプタおよび前記第1のポートを介して前記ホストブリッジにデータを転送するデータ転送工程と、
    前記データ転送工程が行われている間、前記複数のレーンの各々に対して、前記第1のホストバスアダプタに対する通信が可能であるか否かを判断することによって前記レーンが正常であるか否かを判断するヘルスチェック工程と、
    前記データ転送工程が行われている間に前記第1のポートの前記複数のレーンのうちのいずれかに通信エラーが発生した場合に、前記ホストブリッジが前記複数のレーンのうち正常であるレーンを使用して前記データ転送における転送未完了のデータを受信する未完了データ処理工程と、
    前記転送未完了のデータの受信が完了した後、前記ホストブリッジと前記周辺装置との間の中継を前記第1のホストバスアダプタから前記第2のホストバスアダプタに切り替えるバス切り替え工程と
    を有することを特徴とする障害処理方法。
  7. 前記第1のポートを構成する前記レーンの全てが異常である場合、前記バス切り替え工程は前記ホストブリッジが前記転送未完了のデータを破棄して前記ホストブリッジと前記周辺装置との間の中継を前記第1のホストバスアダプタから前記第2のホストバスアダプタに切り替えることを特徴とする、請求項に記載の障害処理方法。
  8. 上位に接続された演算処理装置から発行されたリード要求に応じて周辺装置にデータ転送要求を発行するホストブリッジと、前記周辺装置と各々複数のレーンを介して接続され、前記ホストブリッジと前記周辺装置との間を中継する第1および第2のホストバスアダプタと、前記第1および第2のホストバスアダプタと各々接続された第1および第2のポートを有するスイッチ装置とを有するコンピュータシステムにおいて、前記ホストブリッジが備えるコンピュータに、
    前記周辺装置にデータ転送要求を発行する転送要求処理と、
    前記データ転送要求に反応した前記周辺装置から、前記第1のホストバスアダプタおよび前記第1のポートを介してデータを受信するデータ転送処理と、
    前記データ転送処理が行われている間、前記複数のレーンの各々に対して、前記第1のホストバスアダプタに対する通信が可能であるか否かを判断することによって前記レーンが正常であるか否かを判断するヘルスチェック処理と、
    前記データ転送処理が行われている間に前記第1のポートの前記複数のレーンのうちのいずれかに通信エラーが発生した場合に、前記複数のレーンのうち正常であるレーンを使用して前記データ転送における転送未完了のデータを受信する未完了データ処理と、
    前記転送未完了のデータの受信が完了した後、前記ホストブリッジと前記周辺装置との間の中継を前記第1のホストバスアダプタから前記第2のホストバスアダプタに切り替えるバス切り替え処理と
    を実行させることを特徴とする障害処理プログラム。
  9. 前記第1のポートを構成する前記レーンの全てが異常である場合、前記バス切り替え処理は前記ホストブリッジが前記転送未完了のデータを破棄して前記ホストブリッジと前記周辺装置との間の中継を前記第1のホストバスアダプタから前記第2のホストバスアダプタに切り替えることを特徴とする、請求項に記載の障害処理プログラム。
JP2008009652A 2008-01-18 2008-01-18 コンピュータシステム、障害処理方法および障害処理プログラム Expired - Fee Related JP5151500B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008009652A JP5151500B2 (ja) 2008-01-18 2008-01-18 コンピュータシステム、障害処理方法および障害処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008009652A JP5151500B2 (ja) 2008-01-18 2008-01-18 コンピュータシステム、障害処理方法および障害処理プログラム

Publications (2)

Publication Number Publication Date
JP2009169854A JP2009169854A (ja) 2009-07-30
JP5151500B2 true JP5151500B2 (ja) 2013-02-27

Family

ID=40970916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008009652A Expired - Fee Related JP5151500B2 (ja) 2008-01-18 2008-01-18 コンピュータシステム、障害処理方法および障害処理プログラム

Country Status (1)

Country Link
JP (1) JP5151500B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5573118B2 (ja) * 2009-11-18 2014-08-20 日本電気株式会社 ディスクアレイ装置の故障診断システム、故障診断方法、故障診断プログラムおよびディスク装置
US8645746B2 (en) * 2010-12-03 2014-02-04 International Business Machines Corporation Cable redundancy and failover for multi-lane PCI express IO interconnections
JP5680434B2 (ja) * 2011-02-14 2015-03-04 富士通テレコムネットワークス株式会社 Pciバス制御システム
GB2495313B (en) * 2011-10-05 2013-12-04 Micron Technology Inc Connection method
US9141493B2 (en) 2013-07-12 2015-09-22 International Business Machines Corporation Isolating a PCI host bridge in response to an error event
US9342422B2 (en) 2013-11-07 2016-05-17 International Business Machines Corporation Selectively coupling a PCI host bridge to multiple PCI communication paths

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0697940A (ja) * 1992-05-21 1994-04-08 Nec Corp Lan接続処理装置
JP2005130152A (ja) * 2003-10-23 2005-05-19 Nec Corp ネットワーク障害回避システム及び経路切り替え方法
JP4322659B2 (ja) * 2003-12-19 2009-09-02 エヌイーシーコンピュータテクノ株式会社 シリアル伝送制御装置、コンピュータシステム、および、シリアル伝送制御方法
JP4558519B2 (ja) * 2005-01-18 2010-10-06 富士通株式会社 情報処理装置およびシステムバス制御方法
JP2007188428A (ja) * 2006-01-16 2007-07-26 Fuji Xerox Co Ltd 半導体ストレージ装置およびストレージシステム
JP4877482B2 (ja) * 2006-04-11 2012-02-15 日本電気株式会社 PCIExpressリンク、マルチホストコンピュータシステム、およびPCIExpressリンクの再構成方法
JP5151176B2 (ja) * 2007-02-21 2013-02-27 株式会社リコー データ通信装置、画像処理システムおよびデータ通信方法

Also Published As

Publication number Publication date
JP2009169854A (ja) 2009-07-30

Similar Documents

Publication Publication Date Title
JP4658122B2 (ja) Dmaコントローラ、ノード、データ転送制御方法、及びプログラム
JP6427979B2 (ja) 原因特定方法、原因特定プログラム、情報処理システム
US8281203B2 (en) PCI.Express communication system and communication method thereof
JP5151500B2 (ja) コンピュータシステム、障害処理方法および障害処理プログラム
JP4391954B2 (ja) ファイル制御システムおよびファイル制御装置
US7676701B2 (en) Computer readable medium storing an error recovery program, error recovery method, error recovery apparatus, and computer system
JP2008090375A (ja) 割込み制御システム、およびこれを利用した記憶制御システム
US7631226B2 (en) Computer system, bus controller, and bus fault handling method used in the same computer system and bus controller
US10013367B2 (en) I/O processing system including dynamic missing interrupt and input/output detection
KR20100023732A (ko) 전송 시스템, 전송 장치 및 전송 방법
JP2006190257A (ja) データ転送装置およびデータ転送方法
US11068337B2 (en) Data processing apparatus that disconnects control circuit from error detection circuit and diagnosis method
TW201214127A (en) Memory device, host controller and memory system
JP5316502B2 (ja) I/oブリッジ装置、応答通知方法、及びプログラム
JP4487756B2 (ja) コンピュータシステム及びシステム監視プログラム
US8301817B1 (en) Ring bus for sharing resources among multiple engines
JP5444194B2 (ja) データ転送装置、データ転送方法、コンピュータシステム
JP4410270B2 (ja) バス制御装置
TWI259368B (en) Method, apparatus and program storage device for automatically presenting status from a host bus adapter until an error is detected
US6754761B1 (en) Communications system including symmetric bus bridge and method used therewith
JP2006178786A (ja) マルチノードシステム、ノード装置、ノード間クロスバスイッチ及び障害処理方法
JP4941212B2 (ja) 電子デバイス、データ処理装置、及びバス制御方法
US8984193B1 (en) Line speed sequential transaction packet processing
WO2008062511A1 (fr) Système multiprocesseur
JP4439295B2 (ja) データ転送制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120321

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120518

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121119

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5151500

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees