国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用來在主橋中提供擴展錯誤處理能力的方法和系統的制作方法

      文檔序號:6412791閱讀:182來源:國知局
      專利名稱:用來在主橋中提供擴展錯誤處理能力的方法和系統的制作方法
      技術領域
      本發(fā)明總體涉及改良的數據處理系統,具體來說涉及在數據處理系統中處理錯誤的方法、系統和產品。更具體地,本發(fā)明提供了一種用來在主橋(hostbridge)中提供擴展錯誤處理(EEH)的方法、系統和產品。
      背景技術
      在數據處理系統(平臺)內的邏輯分區(qū)(LPAR)功能允許1個操作系統(OS)的多份拷貝或多個不同操作系統同時運行于單個數據處理系統平臺。操作系統映像運行所處的分區(qū)被分配給平臺資源的不重疊子集。這些平臺可配置資源包括一個或更多架構上迥異(distinct)的處理器,并具有它們的中斷管理區(qū)域、系統存儲器區(qū)和輸入/輸出(I/O)適配卡總線插槽。分區(qū)的資源由平臺的固件呈現給OS映像。
      每個運行于平臺內的迥異的OS或OS的映像被分開保護,從而一個邏輯分區(qū)上的軟件錯誤不會影響任何其它分區(qū)的正確操作。這是通過配置平臺資源的不相交集合以由各OS映像直接管理、以及通過提供機制來確保各種映像不能控制未配置給它的任何資源來提供的。而且,可防止在操作系統的配置資源控制下的軟件錯誤影響任何其它映像的資源。于是,OS的各映像(或每個不同的OS)直接控制平臺內迥異的可配置資源集合。
      對于LPAR系統中的硬件資源,這些資源被各種分區(qū)分開地共享、各分區(qū)自身互不相交、每個分區(qū)都好像一臺獨立的計算機。這些資源可包括例如輸入/輸出(I/O)適配卡、存儲器條、非易失性隨機存取存儲器(NVRAM)和硬盤驅動器。LPAR系統內的各分區(qū)可被反復引導和關機,而毋需整個系統的重新加電(power cycle)。
      實際上,被分區(qū)分開地共享的某些I/O設備其自身是由諸如主外設組件接口(PCI)橋、這里也被稱作PHB的通用硬件所控制的,該PHB可能具有許多由橋控制或橋下的I/O適配卡。設備是利用這些I/O適配卡而耦合到PHB的。此橋可被認為是被分配給其插槽的全部分區(qū)所共享的。因而,若橋變得無法操作,則它影響到共享橋下設備的全部分區(qū)。確實,該問題自身可變得如此嚴重,以致于若任何分區(qū)再試圖使用橋,則整個LPAR系統會崩潰。換句話說,當發(fā)生崩潰,整體LPAR系統就出現故障。常規(guī)的行動措施是終止共享橋的運行分區(qū),這將防止系統因該故障而崩潰。
      當出現設備錯誤、這里也稱作設備錯誤時,設備所耦合的PCI主橋(PHB)被假定為不可用的、或錯誤的狀態(tài)。該PHB接著生成機器核查,其繼而調用了機器核查中斷(MCI)句柄(handler)。MCI句柄報告錯誤并終止被分配了PHB的全部分區(qū)。此處理是“常規(guī)”解決方案,其防止整個LPAR系統因設備錯誤而崩潰。
      單個PHB通常支持多個插槽,每個插槽皆被分配給不同的分區(qū)。當設備錯誤出現在耦合到PHB的插槽中時,設備錯誤將造成被分配了故障設備的分區(qū)的終止,并當生成錯誤的適配卡不支持擴展錯誤處理時,還將造成被分配了PHB的其它插槽的其它全部分區(qū)的終止。
      當分區(qū)終止時,它必須被重新引導,然后才能再度利用(utilized)。終止后接著再重新引導一個分區(qū)會導致當出現錯誤而終止分區(qū)時正在受到處理的關鍵數據的損失。
      上述問題是當有錯誤的故障適配卡不支持擴展錯誤處理(EEH)時出現的。當故障適配卡支持EEH時,EEH特征防止設備錯誤從插槽傳播至支持該插槽的PHB。當故障適配卡不支持EEH時,如上所述,設備錯誤從插槽傳播至支持該插槽的PHB,導致共享該PHB的全部分區(qū)的終止。
      當設備支持EEH時,設備自身自行處理并報告錯誤,而毋需生成機器核查或終止其相關分區(qū)及其它分區(qū)。
      因此,需要一種方法、系統和產品,其當耦合到支持EEH的設備時,提供支持EEH的PHB,從而出現在一個設備中的錯誤將不會造成共享PHB的全部分區(qū)都被終止。

      發(fā)明內容
      公開了一種邏輯分區(qū)數據處理系統中的方法、系統和計算機程序產品,用來提供邏輯分區(qū)數據處理系統中實施擴展錯誤處理的主橋。該主橋耦合到至少一個橋下的設備。對于耦合到主橋下的全部設備是否都實施擴展錯誤處理做出確定。若耦合到主橋下的全部設備都實施擴展錯誤處理,則主橋被初始化以在擴展錯誤處理模式下操作。如果至少有一個設備不實施擴展錯誤處理,則主橋被初始化以在非擴展錯誤處理模式下操作。
      當主橋處在擴展錯誤處理模式時,設備處理任何出現在設備內的錯誤而不使錯誤傳播至主橋上,從而共享主橋的全部分區(qū)繼續(xù)不被終止地操作,同時該設備處理錯誤。當主橋處在非擴展錯誤處理模式下時,當在某一設備內出現錯誤時由主橋生成機器核查,這導致共享主橋的全部分區(qū)的終止。
      在下面的詳細撰寫的說明書中,本發(fā)明的上述以及其他目的、特點和優(yōu)點將會變得更加清楚。


      在所附權利要求書中闡述了被認為是本發(fā)明的特點的新穎特征。然而,通過參照下面結合附圖而閱讀的說明性實施例的詳述,本發(fā)明自身以及有用的優(yōu)選實施例、及其進一步的目的和優(yōu)點將被很好地理解。
      圖1是根據本發(fā)明的可實施本發(fā)明的數據處理系統的方框圖;圖2是根據本發(fā)明的可實施本發(fā)明的示例邏輯分區(qū)平臺的方框圖;圖3繪出了根據本發(fā)明的一個優(yōu)選實施例的高層流程圖,其描繪了取決于PHB下的全部插槽是否具有支持擴展錯誤處理的設備而為PHB設置機器核查或擴展錯誤處理操作模式;圖4繪出了根據本發(fā)明的優(yōu)選實施例的高層流程圖,其描繪了PHB根據PHB的操作模式來處理錯誤;和圖5繪出了根據本發(fā)明的一個優(yōu)選實施例的高層流程圖,其描繪了當PHB處在擴展錯誤處理模式下時為PHB執(zhí)行錯誤恢復。
      具體實施例方式
      通過參照附圖,本發(fā)明的優(yōu)選實施例及其優(yōu)點將被更好地理解,相同標記在附圖中被用于相同和相應的附圖部件。
      公開了一種方法、系統和計算機程序產品,用來提供一種PCI主橋(PHB),其當PHB下的全部設備都在擴展錯誤處理模式(EEH)下操作時能夠在EEH模式下操作。PHB處在機器核查模式下或是EEH模式下。當任何PHB下的設備不實施EEH時,PHB將在機器核查模式下操作,從而當某個PHB下的設備向PHB報告錯誤時造成共享該PHB的全部分區(qū)的終止。當PHB下的全部設備都實施EEH時,PHB將在EEH模式下操作,從而當某個PHB下的設備向PHB報告錯誤時不造成共享該PHB的全部分區(qū)的終止。
      當PHB處在EEH模式下而且某個PHB下的設備向它報告一個錯誤時,PHB的生成機器核查的能力將被禁用。對于該PHB存儲器輸入/輸出(I/O)和DMA請求處理也被而禁用。錯誤指示將被報告給PHB下的全部設備。接著在PHB中清除錯誤。一旦清除了錯誤,存儲器I/O和DMA會對PHB恢復。于是,在PHB處理錯誤的同時,PHB被暫時凍結。一旦為PHB執(zhí)行了錯誤恢復處理,則PHB被解凍。以此方式,毋需終止分區(qū),并且在處理期間也不會丟失數據。
      因為PHB下的全部設備都被啟用,所以設備能夠處理錯誤而毋需PHB介入,也毋需機器核查。因此,在將錯誤報告給PHB后,PHB能夠被解凍并繼續(xù)操作,同時設備自身處理并清除錯誤。這使得PHB能繼續(xù)操作而不生成機器核查,也不使任何分區(qū)終止,同時PHB下的設備處理并清除錯誤。
      本發(fā)明的處理是在運行期執(zhí)行的。進而,這些處理是動態(tài)的,從而取決于PHB下的設備的EEH模式的狀態(tài),在機器繼續(xù)其操作的同時、PHB的模式可動態(tài)地從EEH變成機器核查、再回到EEH模式。
      本發(fā)明可用于實施單個PHB下EEH和非EEH設備兩者組合的系統,或僅實施單一PHB下的EEH設備的系統。本發(fā)明確定當前利用哪種類型的實施,或是僅僅EEH設備或是EEH和非EEH設備的組合,并動態(tài)地相應調整PHB的模式。于是,當實施僅采用PHB下的EEH設備時,PHB被EEH啟用。當所述實施利用EEH和非EEH設備兩者時,PHB不被EEH啟用而是通過機器核查來處理錯誤。
      進而,當實施從僅僅EEH變成EEH和非EEH組合時,PHB在運行期操作期間動態(tài)地將其模式從EEH變成機器核查,而不中斷其它處理。類似地,當實施從EEH和非EEH組合變成僅僅EEH時,PHB在運行期操作期間動態(tài)地將其模式從機器核查模式(非EEH)變成EEH模式,而不中斷其它處理。
      本發(fā)明為各PHB提供了可選擇的機器核查模式。通過利用PHB內的一個特殊比特可為各PHB獨立地打開或關閉該機器核查模式。機器核查模式可為各個PHB可編程地選擇。以此方式,PHB的任何子集都可在EEH模式下操作,同時系統中的其余PHB在機器核查模式下操作。
      當PHB中的模式比特被設成第一值時,為該PHB打開機器核查模式。當該模式比特被設成第二值時,為該PHB關閉機器核查模式。根據本發(fā)明,當該位被設成第二值時,關閉機器核查模式,這指示PHB處在EEH模式下。于是,當為特定PHB關閉機器核查模式時,就說PHB處在EEH模式下,或者說EEH被啟用。
      當PHB下的設備全部被EEH啟用并由設備驅動報告錯誤時,設備驅動的設備所連接的EADS將進入錯誤狀態(tài),其將錯誤指示符報告給試圖執(zhí)行裝載其設備的任何設備驅動。當設備驅動接收到此錯誤指示符、其通常是諸如“FF”等特定值時,設備驅動試圖處理并接著清除該錯誤。以此方式,將錯誤報告給PHB下的每個設備,而不在將設備連接至其PHB的PCI總線上指示錯誤,也不使錯誤隨后指示給RIO集線器。
      未被EEH啟用的設備不需要核查硬件錯誤條件和狀態(tài)。相反,非EEH設備當在設備驅動裝載操作期間出現錯誤時,取決于PHB向分區(qū)通知機器核查,即,發(fā)布Derr信號而將錯誤指示給該PHB下的設備。
      圖1是根據本發(fā)明的可實施本發(fā)明的數據處理系統的框圖。數據處理系統100可以是對稱多處理器(SMP)系統,其包括連接至系統總線106的多個處理器102、103、104和105。例如,數據處理系統100可以是IBM RS/6000,它是位于紐約州阿爾蒙克市的國際商用機器公司的產品。數據處理系統100包括中央電子套件(CEC)101,其包括邏輯分區(qū)的硬件。CEC 101包括連接至系統總線106的多個處理器102、103、104和105?;蛘撸部刹捎脝翁幚砥飨到y。同樣連接至系統總線106的還有存儲器控制器/高速緩存108,其提供與多個本地存儲器160~163的接口。RIO集線器110連接至系統總線106并提供與RIO總線112的接口。存儲器控制器/高速緩存108和RIO集線器110可如圖示被集成。
      數據處理系統100是邏輯分區(qū)數據處理系統。于是,數據處理系統100可具有同時運行的多個不同操作系統(或單個操作系統的多個例程)。這些多個操作系統可具有在其內執(zhí)行的任何數量的軟件程序。數據處理系統100是邏輯分區(qū)的,從而諸如插槽120、121和127~130、圖形適配卡148和硬盤適配卡149等PCI I/O適配卡可耦合的不同的PCI插槽可各被分配給不同的邏輯分區(qū)。在此情形下,圖形適配卡148提供到顯示設備(未圖示)的連接,而硬盤適配卡149提供到控制硬盤150的連接。
      于是,例如,假設數據處理系統100被分成3個邏輯分區(qū)P1、P2和P3。各插槽120、121和127~130、圖形適配卡148和硬盤適配卡149、各主處理器102~105和各本地存儲器160~163被分配給這3個分區(qū)之一。例如,處理器102、本地存儲器160和插槽120、127和129可被分配給邏輯分區(qū)P1,處理器103~104、本地存儲器161和插槽121可被分配給邏輯分區(qū)P2;而處理器105、本地存儲器162~163插槽128和130、圖形適配卡148和硬盤適配卡149可被分配給邏輯分區(qū)P3。
      在數據處理系統100內執(zhí)行的每個操作系統都被分配給不同的邏輯分區(qū)。于是,在數據處理系統100內執(zhí)行的每個操作系統只可訪問其邏輯分區(qū)內的那些I/O單元。于是,例如,高級交互執(zhí)行(AIX)操作系統的一個例程可在分區(qū)P1內執(zhí)行,AIX操作系統的第二例程、也叫做影像可在分區(qū)P2內執(zhí)行,而Windows 2000操作系統可在分區(qū)P3內操作。Windows 2000是位于華盛頓州雷德蒙市的Microsoft公司的產品和商標。
      RIO至PCI橋114連接至RIO總線112并提供至PCI總線117和PCI總線118的接口。RIO至PCI橋114包括一個或更多PCI主橋(PHB),例如PHB115和PHB 116。各PHB通過PCI橋耦合到PCI至PCI橋。例如,PHB 115通過PCI橋117耦合到PCI至PCI橋119。PHB 116通過PCI橋118耦合到PCI至PCI橋126。每個PCI至PCI橋都耦合到一個或更多PCI插槽。例如,PCI至PCI橋119使用PCI總線122而耦合到插槽120和插槽121。盡管只表示出了2個插槽,但每個PHB通常支持4個或8個插槽。PCI至PCI橋126使用PCI總線131而耦合到插槽127~130。
      插槽120和121被說成是在PHB 115下并由PHB 115支持。插槽127、128、129和130被說成是在PHB 116下并由PHB 116支持。
      各插槽包括可外接PCI I/O適配卡的EADS芯片。例如,插槽120包括EADS 124。I/O適配卡可插入插槽并于是耦合到EADS。例如,I/O適配卡125被插入插槽120并耦合到EADS 124。I/O設備可利用I/O適配卡而耦合到數據處理系統100。例如,如圖示,I/O設備123耦合到I/O適配卡125。
      存儲器映射圖形適配卡148可通過PCI總線144、EADS 142、PCI總線141和RIO至PCI橋140而連接到RIO總線112。硬盤150可耦合到硬盤適配卡149、其連接到PCI總線145。繼而,該總線又連接到EADS 142、其由PCI總線141連接到RIO至PCI橋140。
      RIO至PCI橋132為PCI總線133提供接口以連接到RIO總線112。PCII/O適配卡136由PCI總線135連接到EADS 134。EADS 132連接到PCI總線133。此PCI總線還將RIO至PCI橋132連接到服務處理器郵箱接口和ISA總線訪問通道邏輯194以及PCI至PCI橋132。服務處理器郵箱接口和ISA總線訪問通道邏輯194傳遞目地的為PCI/ISA橋193的PCI訪問。NVRAM存儲192連接到ISA總線196。服務處理器135通過其本地PCI總線195耦合到服務處理器郵箱接口和ISA總線訪問通道邏輯194。服務處理器135還經由多個JTAG/I2C總線134而連接到處理器102~105。JTAG/I2C總線134是JTAG/掃描總線(見IEEE 1149.1)和飛利普I2C總線的組合。然而,作為替代,JTAG/I2C總線134可由僅僅飛利普I2C總線或僅僅JTAG/掃描總線替代。主處理器102、103、104和105的全部SP-ATTN信號都被一起連接到服務處理器的中斷輸入信號。服務處理器135具有自身的本地存儲器191,并能訪問硬件OP-面板190。
      當數據處理系統100最初上電時,服務處理器135使用JTAG/掃描I2C總線134來質詢系統(主機)處理器102~105、存儲器控制器/高速緩存108和RIO集線器110。此步驟完成后,服務處理器135具有了數據處理系統100的報表(inventory)和拓樸結構理解。服務處理器135也對通過質詢主機處理器102~105、存儲器控制器/高速緩存108和RIO集線器110而發(fā)現的全部元素執(zhí)行內建自測試(BIST)、基本確保測試(BAT)和存儲器測試。在BIST、BAT和存儲器測試期間檢測到的故障的任何錯誤信息都由服務處理器135收集和報告。
      若取出了在BIST、BAT和存儲器檢驗期間發(fā)現有故障的元素后、對系統資源有意義/有效的配置仍然有可能,則允許數據處理系統100繼續(xù)將可執(zhí)行代碼載入本地(主機)存儲器160~163。服務處理器135接著釋放主機處理器102~105、用于執(zhí)行載入主機存儲器160~163的代碼。當主機處理器102~105正在從數據處理系統100內的各個操作系統而執(zhí)行代碼時,服務處理器135進入監(jiān)控和報告錯誤的模式。由服務處理器135監(jiān)控的項目類型包括例如,降溫風扇的速度和操作、熱傳感器、供電調節(jié)器和由處理器102~105、本地存儲器160~163和RIO集線器110報告的可恢復的和不可恢復的錯誤。服務處理器135負責保存和報告與數據處理系統100中的全部監(jiān)控項目有關的錯誤信息。服務處理器135還基于錯誤類型和定義的閾值而采取行動。例如,服務處理器135可記錄下處理器高速緩存上過量的可恢復錯誤,并斷定這預示著硬故障?;诖舜_定,服務處理器135可在當前運行的會話和未來的初始程序裝載(IPL)期間標記該解除配置的資源。IPL有時也稱作“引導”或“引導道”。
      數據處理系統100可使用各種商業(yè)可用的計算機系統來實施。例如,數據處理系統100可使用由國際商用機器公司提供的IBM電子服務器i系列模型840系統來實施。這種系統可使用OS/400操作系統來支持邏輯分區(qū),該操作系統也是由國際商用機器公司提供的。
      本領域技術人員人員應注意到圖1所繪的硬件可變動。例如,像光驅等其它外設設備也可附加于所繪硬件或用于取代所繪硬件。所繪的實例無意于對本發(fā)明施加架構上的限制。
      下面參照圖2,繪出了實施了本發(fā)明的示例邏輯分區(qū)平臺的方框圖。邏輯分區(qū)平臺200的硬件可被實施為例如圖1中的數據處理系統100。邏輯分區(qū)平臺200包括分區(qū)的硬件230、操作系統202、204、206、208、和系統管理程序210。操作系統202、204、206和208可以是一個操作系統的多份拷貝或同時運行于平臺200的多個不同操作系統。這些操作系統可使用OS/400來實施,該OS/400被設計成與系統管理程序接口。操作系統202、204、206和208置于分區(qū)203、205、207和209中。此外,這些分區(qū)還包括固件載入程序(loader)211、213、215和217。當分區(qū)203、205、207和209被例示(instantiated)時,由系統管理程序的分區(qū)管理器將開放固件的拷貝載入各分區(qū)。相關或分配給分區(qū)的處理器接著被分派至分區(qū)的存儲器,以執(zhí)行分區(qū)固件。
      分區(qū)的硬件230包括多個處理器232~238,多個系統存儲器單元240~246、多個輸入/輸出(I/O)適配器248~262和存儲單元270。分區(qū)的硬件230還包括服務處理器290,其可被用來提供諸如處理分區(qū)中的錯誤處理等各種服務。各處理器232~238、存儲器單元240~246、NVRAM存儲298和I/O適配器248~262可被分配給邏輯分區(qū)平臺200內的多個分區(qū)之一,其各自對應于操作系統202、204、206和208之一。
      分區(qū)管理固件(系統管理程序)210為分區(qū)203、205、207和209執(zhí)行多種功能和服務,以創(chuàng)建和強化邏輯分區(qū)平臺200的分區(qū)。系統管理程序210是與底層硬件一致的固件實施虛擬機。系統管理程序軟件是由國際商用機器公司提供的。固件是存儲于存儲器芯片的“軟件”,該存儲器芯片毋需電源而能保持其內容,例如,只讀存儲器(ROM)、可編程ROM(PROM)、可擦除ROM(EPROM)、電可擦除ROM(EERPOM)和非易失性隨機存取存儲器(非易失性RAM)。于是,系統管理程序210允許通過虛擬化邏輯分區(qū)平臺200的全部硬件資源來同時執(zhí)行獨立的OS映像202、204、206和208。
      圖3繪出了根據本發(fā)明的一個優(yōu)選實施例的高層流程圖,其描繪了取決于PHB下的全部插槽是否具有支持擴展錯誤處理的設備而為PHB設置機器核查或擴展錯誤處理操作模式。處理開始如框300所繪,而此后前進至框302,其描繪了設備驅動發(fā)布“設置EEH”調用,以便為耦合到特定PHB的特定插槽中的受設備驅動控制的設備而啟用EEH。設備驅動可使用“設置EEH”或“禁用EEH”調用而為其插槽以及其設備而啟用或禁用EEH。此調用將為該插槽打開EEH或為該插槽關閉EEH。此外,當設備驅動下達“設置EEH”調用時,此特定PHB的全部插槽都將被核查,以確定它們是否全部是EEH啟用的,而這對于設備驅動是透明的。若確定全部是EEH啟用的,此調用將使得EEH為該特定PHB而啟用。EEH是通過將PHB的模式比特設成指示為該PHB關閉機器核查模式的第二值而啟用的。接下來,框304描繪確定PHB下插槽中的全部設備是否都支持EEH,即它們是否都處在EEH模式下。
      框306接著描繪了確定全部設備是否都處在EEH模式下。若一個或更多設備不處在EEH模式下,則處理前進至框308,其繪出了初始化此PHB的固件,從而使它處在機器核查模式下,有時也稱作Derr模式。于是,將PHB的模式比特設成指示為該PHB打開機器核查模式的第一值。當PHB處在機器核查模式下時,它將在PHB下的任何設備向PHB報告錯誤時生成機器核查。當由PHB生成機器核查時,共享PHB的全部分區(qū)都將被終止并必須被重新引導方可使用。這可能導致重要數據的丟失。處理接著返回框308。
      再度參照框306,若做出確定PHB下插槽中的全部設備都處在EEH模式下,則處理前進至框310,其描繪在擴展錯誤處理(EEH)模式下初始化此PHB。通過對PHB禁用Derr模式而將該PHB設成EEH模式。做到這一點是通過將模式比特設成這樣的預定值其當設成該值時指示為該PHB關閉Derr模式。當為PHB關閉Derr模式時,該PHB按定義是處在EEH模式下。
      有時EEH模式被稱作“凍結”模式。此外,可以說一個事件將“凍結”PHB。“凍結”PHB的意思是PHB將不以常規(guī)方式處理數據。“凍結”模式不同于PHB“被凍結”。此處使用的“凍結”模式意味著PHB處在EEH特征被啟用的EEH模式下,從而將會處理錯誤而不造成發(fā)生機器核查、其可能導致共享此PHB的分區(qū)的終止。
      接下來,框312描繪了確定在此PHB下任何插槽中是否禁用EEH模式。若確定在任何插槽中都不禁用EEH模式,即,全部插槽都耦合到啟用EEH的設備,則處理前進至框312。
      再度參照框312,若確定一個或更多插槽耦合到禁用EEH的設備,則處理前進至框314,其繪出了對該PHB禁用EEH模式。這將造成PHB操作在機器核查模式下而非EEH模式下。于是,本發(fā)明將檢測PHB下設備的當前狀態(tài),并將根據這些設備的當前狀態(tài)而動態(tài)地改變PHB的模式。處理接著前進至框316,其繪出了設置EADS比特掩碼(mask),以指示對一個或更多特定插槽禁用EEH。處理接著返回框302。
      圖4繪出了根據本發(fā)明的優(yōu)選實施例的高層流程圖,其描繪了PHB根據PHB的操作模式而處理錯誤。處理開始如框400所繪,而此后前進至框402,其描繪了檢測特定PHB上的PHB錯誤條件。當PHB下的設備向PHB報告錯誤時出現PHB錯誤條件。接下來,框404繪出了確定PHB是否處在EEH模式下。若確定PHB不處于EEH模式下,則處理前進至框406,其描繪調用(invoke)機器核查句柄。接下來,框408繪出了在錯誤日志中即將報告的已完成錯誤的分析和錯誤源。處理接著前進至框410,其描繪了終止共享此PHB的全部分區(qū)。此后,框412繪出了由機器核查句柄來處理此錯誤。處理接著如框414所繪而終止。
      再度參照框404,若確定PHB處在EEH模式,則處理前進至框418,其描繪了全部設備驅動都接收到PHB處在EEH模式的指示。提供此指示的通常方法是當設備驅動載入其設備時將16進制值“FF”返回設備驅動。此后,框420繪出了執(zhí)行PHB錯誤恢復。此執(zhí)行PHB錯誤恢復的處理將參照圖5而更詳細地說明。
      接下來,框422描繪了為指示此錯誤的PHB建立錯誤日志。此后,框424繪出了使用EADS掩碼(mask)以定位此PHB下的全部設備。EADS掩碼保持于EADS,其表示設備當前是否耦合到PHB下的各插槽。處理接著前進至框426,其描繪了當設備驅動接收到“FF”時響應于驅動執(zhí)行載入其設備的嘗試、設備驅動請求PHB的錯誤日志的拷貝。
      框428接著繪出了將錯誤日志的拷貝報告給每個請求該日志的拷貝的設備。此日志將指示PHB處在錯誤狀態(tài)下并已被恢復。取決于特定設備驅動何時接收到“FF”指示,這些請求將在不同時間做出。處理接著前進至框430,其描繪了為該PHB重置EADS掩碼。EADS掩碼被用來向設備驅動報告錯誤。當PHB下的全部設備驅動都接收到錯誤日志時,掩碼被清除,以表示已將該錯誤報告給此PHB了。處理接著如框432所繪而終止。
      圖5繪出了根據本發(fā)明的一個優(yōu)選實施例的高層流程圖,其描繪了當PHB處在擴展錯誤處理模式下時為PHB實行錯誤恢復。處理開始如框500所繪,而此后前進至框504,其描繪了為處在錯誤條件下的PHB而禁用存儲器I/O。
      處理接著前進至框506,其描繪了禁用此PHB中的PHB裁決,這將防止此恢復處理期間的附加DMA錯誤。配置I/O仍會被啟用并可由PHB接收???08接著繪出了為此PHB清除PHB錯誤狀態(tài)。
      此后,框510描繪了在此PHB下的某一插槽中造成錯誤以便凍結全部插槽。當在一個插槽中造成錯誤時,設備驅動將錯誤報告給EADS,其接著將此信息提供給全部設備。此錯誤是通過將不存在的設備標識(ID)寫入EADS而造成的。處理接著前進至框512,其繪出了在此PHB中重新啟用存儲器I/O和DMA裁決。此后,框514描繪了設備驅動將每個插槽分別重新編程,同時各設備訪問其EADS以便從該插槽去除錯誤,即解凍該插槽。當去除錯誤后,插槽可被重新使用并且不再被凍結了。接下來,框516繪出了提供錯誤日志。處理接著如框518所繪而終止。
      重要的是應注意到盡管本發(fā)明是在完全功能的數據處理系統的場景中說明的,但是本領域技術人員會注意到本發(fā)明的處理能夠以計算機可讀的指令介質的形式和各種形式來遞送,而且不論實際被用來執(zhí)行遞送的特定類型的信號承載介質如何、同樣適用本發(fā)明。計算機可讀介質的實例包括軟盤、硬盤驅動器、RAM、CD-ROM、DVD-ROM等可記錄型介質,和諸如數字和模擬鏈路、使用例如射頻和光波傳輸等傳輸形式的有線或無線通信鏈路的傳輸型介質。計算機可讀介質可采取編碼格式的形式,其可被解碼以供特定數據處理系統中的實際使用。
      本發(fā)明的說明是為描述和說明的目的而呈現的,而無意于在公開形式上窮舉或限制本發(fā)明。各種修改和變動對于本領域技術人員將是很明顯的。實施例的選擇和說明是為了最好地解釋本發(fā)明的原理、實際應用,并使其他本領域技術人員能夠理解本發(fā)明適宜于構想的特定用途的具有各種修改的各種
      權利要求
      1.一種邏輯分區(qū)數據處理系統中的方法,用于在邏輯分區(qū)數據處理系統中提供實施擴展錯誤處理的主橋,所述方法包括以下步驟當耦合到所述主橋下的全部設備都實施擴展錯誤處理時,在所述主橋中啟用擴展錯誤處理;和當耦合到所述主橋下的至少一個所述設備不實施擴展錯誤處理時,在所述主橋中禁用擴展錯誤處理。
      2.如權利要求1所述的方法,還包括以下步驟將其它所述設備之一分配給第一分區(qū);將另一所述設備分配給第二分區(qū);所述主橋由所述第一和第二分區(qū)共享;在所述設備之一中出現錯誤時,當在所述主橋中禁用擴展錯誤處理時終止所述第一和第二分區(qū);在所述設備之一中出現錯誤時,當在所述主橋中啟用擴展錯誤處理時繼續(xù)操作所述第一和第二分區(qū)。
      3.如權利要求1所述的方法,還包括以下步驟在運行期響應于所述設備的擴展錯誤處理狀態(tài)的改變,在所述主橋中動態(tài)地啟用或禁用擴展錯誤處理。
      4.如權利要求1所述的方法,還包括以下步驟允許實施擴展錯誤處理的設備和不實施擴展錯誤處理的設備在所述系統中同時存在和操作。
      5.如權利要求1所述的方法,還包括以下步驟確定全部所述設備是否都實施擴展錯誤處理;響應于確定全部所述設備都實施擴展錯誤處理/將所述主橋初始化為在擴展錯誤處理模式下操作;響應于確定至少一個所述設備不實施擴展錯誤處理,將所述主橋初始化為在機器核查模式下操作。
      6.如權利要求5所述的方法,還包括以下步驟在將所述主橋初始化為在擴展錯誤處理模式下操作后,確定在所述設備之一中是否已禁用了擴展錯誤處理;和響應于確定在所述設備之一中已禁用了擴展錯誤處理,將所述主橋初始化為在機器核查模式下操作。
      7.如權利要求1所述的方法,還包括以下步驟核查所述主橋中的錯誤條件、其使所述主橋處在錯誤狀態(tài);確定所述主橋是否啟用了擴展錯誤處理;響應于確定所述主橋啟用了擴展錯誤處理,將所述錯誤報告給所述主橋下的全部所述設備;和為所述主橋實行錯誤恢復,而不終止共享所述主橋的任何分區(qū)。
      8.如權利要求7所述的方法,其中為所述主橋實行錯誤恢復的所述步驟還包括以下步驟清除所述主橋的所述錯誤狀態(tài);將所述錯誤報告給所述主橋下的全部所述設備。
      9.如權利要求8所述的方法,還包括以下步驟響應于每個所述設備接收所述錯誤的所述報告,在每個所述設備中執(zhí)行錯誤恢復;和所述設備處理和清除所述錯誤,而在所述處理和清除所述錯誤期間不需要所述主橋。
      10.如權利要求8所述的方法,還包括以下步驟在為所述主橋實行錯誤恢復的所述步驟期間,禁止所述主橋生成機器核查。
      11.如權利要求8所述的方法,其中將所述錯誤報告給所述主橋下的全部所述設備還包括以下步驟為所述主橋建立說明所述錯誤的錯誤日志;等待設備驅動試圖載入所述設備之一;響應于所述設備驅動試圖載入所述設備之一,將錯誤指示報告給所述設備驅動;響應于所述設備驅動接收到所述錯誤指示,接收所述錯誤日志的拷貝;由所述設備驅動利用所述錯誤日志的所述拷貝以試圖處理和清除所述錯誤。
      12.一種邏輯分區(qū)數據處理系統內的系統,用于在邏輯分區(qū)數據處理系統中提供實施擴展錯誤處理的主橋,包括當耦合到所述主橋下的全部設備都實施擴展錯誤處理時,所述主橋啟用擴展錯誤處理;和當耦合到所述主橋下的至少一個所述設備不實施擴展錯誤處理時,所述主橋禁用擴展錯誤處理。
      13.如權利要求12所述的系統,還包括分配給第一分區(qū)的所述設備之一;分配給第二分區(qū)的另一所述設備;由所述第一和第二分區(qū)共享的所述主橋;在所述設備之一中出現錯誤時,當在所述主橋中禁用擴展錯誤處理時被終止的所述第一和第二分區(qū);在所述設備之一中出現錯誤時,當在所述主橋中啟用擴展錯誤處理時繼續(xù)操作的所述第一和第二分區(qū)。
      14.如權利要求12所述的系統,還包括在運行期響應于所述設備的擴展錯誤處理狀態(tài)的改變,在所述主橋中動態(tài)地啟用或禁用擴展錯誤處理。
      15.如權利要求12所述的系統,還包括所述系統中同時包括實施擴展錯誤處理的設備和不實施擴展錯誤處理的設備兩者。
      16.如權利要求12所述的系統,還包括裝置,用來確定全部所述設備是否都實施擴展錯誤處理;響應于全部所述設備都實施擴展錯誤處理的確定,所述主橋被初始化為在擴展錯誤處理模式下操作;響應于至少一個所述設備不實施擴展錯誤處理的確定,所述主橋被初始化為在機器核查模式下操作。
      17.如權利要求16所述的系統,還包括裝置,用來在將所述主橋初始化為在擴展錯誤處理模式下操作后、確定在所述設備之一中是否已禁用了擴展錯誤處理;和響應于在所述設備之一中已禁用了擴展錯誤處理的確定,所述主橋被初始化為在機器核查模式下操作。
      18.如權利要求12所述的系統,還包括所述主橋中的錯誤條件,其使所述主橋處在錯誤狀態(tài);模式比特,用來確定所述主橋是否啟用了擴展錯誤處理;響應于所述主橋啟用了擴展錯誤處理的確定,被報告給所述主橋下的全部所述設備的所述錯誤;和為所述主橋而實行的錯誤恢復,而不終止共享所述主橋的任何分區(qū)。
      19.如權利要求18所述的系統,還包括被清除的所述主橋的所述錯誤狀態(tài);被報告給所述主橋下的全部所述設備的所述錯誤。
      20.如權利要求19所述的系統,還包括響應于每個所述設備接收所述錯誤的所述報告,在每個所述設備中執(zhí)行的錯誤恢復;和所述設備處理和清除所述錯誤,而在所述處理和清除所述錯誤期間不需要所述主橋。
      21.如權利要求19所述的系統,還包括在為所述主橋實行錯誤恢復的所述步驟期間,被禁止生成機器核查的所述主橋。
      22.如權利要求19所述的系統,還包括為所述主橋說明所述錯誤的錯誤日志;響應于所述設備驅動試圖載入所述設備之一,被報告給所述設備驅動的錯誤指示;響應于所述設備驅動接收到所述錯誤指示,被所述設備驅動接收到的所述錯誤日志的拷貝;所述設備驅動,其利用所述錯誤日志的所述拷貝,以試圖處理和清除所述錯誤。
      23.一種邏輯分區(qū)數據處理系統中的計算機程序產品,用來提供邏輯分區(qū)數據處理系統中實施擴展錯誤處理的主橋,所述產品包括指令裝置,用來當耦合到所述主橋下的全部設備都實施擴展錯誤處理時、在所述主橋中啟用擴展錯誤處理;和指令裝置,用來當耦合到所述主橋下的至少一個所述設備不實施擴展錯誤處理時、在所述主橋中禁用擴展錯誤處理。
      24.如權利要求23所述的產品,還包括指令裝置,用來將所述設備之一分配給第一分區(qū);指令裝置,用來將其它所述設備分配給第二分區(qū);由所述第一和第二分區(qū)共享的所述主橋;指令裝置,用來在所述設備之一中出現錯誤時,當在所述主橋中禁用擴展錯誤處理時終止所述第一和第二分區(qū);指令裝置,用來在所述設備之一中出現錯誤時,當在所述主橋中啟用擴展錯誤處理時繼續(xù)操作所述第一和第二分區(qū)。
      25.如權利要求23所述的產品,還包括指令裝置,其響應于所述設備的擴展錯誤處理狀態(tài)的改變,用來在運行期在所述主橋中動態(tài)地啟用或禁用擴展錯誤處理。
      26.如權利要求23所述的產品,還包括指令裝置,用來允許實施擴展錯誤處理的設備和不實施擴展錯誤處理的設備在所述系統中同時共存和操作。
      27.如權利要求23所述的產品,還包括指令裝置,用來確定全部所述設備是否都實施擴展錯誤處理;指令裝置,其響應于全部所述設備都實施擴展錯誤處理的確定,用來將所述主橋初始化為在擴展錯誤處理模式下操作;指令裝置,其響應于至少一個所述設備不實施擴展錯誤處理的確定,用來將所述主橋初始化為在機器核查模式下操作。
      28.如權利要求27所述的產品,還包括指令裝置,用來在將所述主橋初始化為在擴展錯誤處理模式下操作后、確定在所述設備之一中是否已禁用了擴展錯誤處理;和指令裝置,其響應于在所述設備之一中已禁用了擴展錯誤處理的確定,用來將所述主橋初始化為在機器核查模式下操作。
      29.如權利要求23所述的產品,還包括指令裝置,用來核查所述主橋中的錯誤條件、其使所述主橋處在錯誤狀態(tài);指令裝置,用來確定所述主橋是否啟用了擴展錯誤處理;指令裝置,其響應于所述主橋啟用了擴展錯誤處理的確定,用來將所述錯誤報告給所述主橋下的全部所述設備;和指令裝置,用來為所述主橋實行錯誤恢復、而不終止共享所述主橋的任何分區(qū)。
      30.如權利要求29所述的產品,其中為所述主橋實行錯誤恢復的所述指令裝置還包括指令裝置,用來清除所述主橋的所述錯誤狀態(tài);指令裝置,用來將所述錯誤報告給所述主橋下的全部所述設備。
      31.如權利要求30所述的產品,還包括指令裝置,其響應于每個所述設備接收所述錯誤的所述報告,用來在每個所述設備中執(zhí)行錯誤恢復;和所述設備處理和清除所述錯誤,而在所述處理和清除所述錯誤期間不需要所述主橋。
      32.如權利要求30所述的產品,還包括指令裝置,用來在為所述主橋實行錯誤恢復的所述步驟期間,禁止所述主橋生成機器核查。
      33.如權利要求30所述的產品,還包括指令裝置,用來為所述主橋建立說明所述錯誤的錯誤日志;指令裝置,用來等待設備驅動試圖載入所述設備之一;指令裝置,其響應于所述設備驅動試圖載入所述設備之一,用來將錯誤指示報告給所述設備驅動;指令裝置,其響應于所述設備驅動接收到所述錯誤指示,用來接收所述錯誤日志的拷貝;指令裝置,用來由所述設備驅動利用所述錯誤日志的所述拷貝以試圖處理和清除所述錯誤。
      34.一種邏輯分區(qū)數據處理系統中的方法,用來提供邏輯分區(qū)數據處理系統中實施擴展錯誤處理的主橋,所述方法包括以下步驟將所述主橋耦合到至少一個設備;確定耦合到所述主橋的全部設備是否都實施擴展錯誤處理;響應于耦合到所述主橋的全部設備都實施擴展錯誤處理的確定,將所述主橋初始化為在擴展錯誤處理模式下操作;當所述主橋在擴展錯誤處理模式下操作時,所述設備處理所述設備出現的任何錯誤而不將所述錯誤報告給所述主橋,共享所述主橋的全部分區(qū)繼續(xù)操作而不被終止,同時所述設備處理所述錯誤;響應于耦合到所述主橋的全部設備不都實施擴展錯誤處理的確定,將所述主橋初始化為在非擴展錯誤處理模式下操作;當所述主橋在非擴展錯誤處理模式下操作時,響應于所述設備之一內出現的錯誤,由所述主橋生成機器核查;和響應于接收到所述機器核查,終止共享所述主橋的全部分區(qū)。
      全文摘要
      本發(fā)明公開了一種邏輯分區(qū)數據處理系統中的方法、系統和計算機程序產品,用來提供邏輯分區(qū)數據處理系統中實施擴展錯誤處理(EEH)的主橋。若耦合到主橋下的全部設備都實施EEH,則主橋被初始化為在EEH模式下操作。在EEH模式下,設備處理設備內出現的任何錯誤而不將錯誤報告給主橋,共享主橋的全部分區(qū)繼續(xù)操作而不被終止,同時設備處理錯誤。如果至少一個設備不實施EEH,則主橋被初始化為在非EEH模式下操作。在非EEH模式下,當在設備之一內出現錯誤時,由主橋生成機器核查,導致響應于接收到機器核查,共享主橋的全部分區(qū)被終止。
      文檔編號G06F9/455GK1605986SQ20041005587
      公開日2005年4月13日 申請日期2004年8月5日 優(yōu)先權日2003年10月9日
      發(fā)明者阿什維尼·庫爾卡尼, 道格拉斯·W·奧利弗, 史蒂文·馮格維博爾, 戴維·R·威洛比 申請人:國際商業(yè)機器公司
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1