CN112970002A - 用于可配置错误处理的系统 - Google Patents

用于可配置错误处理的系统 Download PDF

Info

Publication number
CN112970002A
CN112970002A CN201980073582.7A CN201980073582A CN112970002A CN 112970002 A CN112970002 A CN 112970002A CN 201980073582 A CN201980073582 A CN 201980073582A CN 112970002 A CN112970002 A CN 112970002A
Authority
CN
China
Prior art keywords
error
interrupt
firmware
hardware endpoint
hardware
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.)
Pending
Application number
CN201980073582.7A
Other languages
English (en)
Inventor
R·M·尚塔穆蒂
T·L·阮
M·布鲁苏
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN112970002A publication Critical patent/CN112970002A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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/0715Error 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 a system implementing multitasking
    • 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/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/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0784Routing of error reports, e.g. with a specific transmission path or data flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Abstract

错误处理系统提供对I/O硬件端点上的错误的检测,响应于检测到的错误对操作系统中断的触发,在操作系统组件处对中断的接收,响应于接收到的中断、对是使用操作系统处理器还是与I/O硬件端点相关联的固件错误处理器处理错误的确定,以及如果确定使用与I/O硬件端点相关联的固件运行时错误处理器处理错误,对与固件运行时错误处理器相关联的固件中断的触发。

Description

用于可配置错误处理的系统
背景技术
传统计算机硬件设备能够在它们运作时检测错误,并且向它们被安装在的计算平台报告错误。错误然后可能通过平台软件堆栈被传播以用于适当处理。错误可以被传播给固件或者被直接传播给操作系统(O/S)。如果错误首先被传播给固件,则BIOS系统管理模式组件接收用于处理错误的控制,并且控制然后被传递给O/S。
在预引导过程期间,平台被初始化以针对每个安装的硬件设备指定错误传播方案(例如,固件优先或者O/S优先)。这样的硬件设备可以包括存储器模块以及用于加速的联网、计算卸载、存储或者其他服务的外围设备组件互连快速(PCIe)设备。针对设备而被指定的错误传播方案在运行时期间无法被改变。
期望有灵活的错误处理机制,通过该机制O/S可以确定是否按照适合的方式处理错误或者针对典型的固件优先错误处理将控制提供回BIOS。也期望针对特定硬件端点、对错误传播方案的按需更新,特别是对不要求硬件重新初始化的更新。
附图说明
图1示出了根据一些实施例的平台架构中的错误传播。
图2是根据一些实施例的服务器平台的硬件架构的框图。
图3是根据一些实施例的用以传播存储器错误的过程的流程图。
图4是根据一些实施例的用以传播PCIe错误的过程的流程图。
图5是根据一些实施例的用以传播PCIe错误的过程的流程图。
图6是示出了根据一些实施例的替换I/O端点的框图
图7是根据一些实施例的用以改变针对服务器平台中的替换的I/O端点的错误传播方案、而不要求硬重新引导的过程的流程图。
具体实施方式
以下描述被提供以使得本领域任何人能够制作和使用所描述的实施例。然而,各种修改对本领域技术人员而言仍是容易地显而易见的。
一些实施例通过基于可更新过滤逻辑在O/S处确定是在O/S中还是在固件中处理错误提供了对修理错误传播方案的技术问题的技术解决方案。实施例也通过允许对过滤逻辑的更新而无需硬件重新初始化来提供了对在平台定制/更新期间的过多停机时间的问题的技术解决方案。
一般而言,一些实施例运作以检测硬件端点错误并且触发由高级配置和电源接口(ACPI)运行时组件接收的软件中断。ACPI运行时组件确定错误是否被指明为由基于固件的错误处理器(error handler)处理,并且如果是这样,则触发对固件组件的软件中断以用于处理错误。如果错误未被指明为由基于固件的错误处理器处理,则错误由适合的O/S错误处理器处理。
错误是否被指明为由基于固件的错误处理器处理的确定可以基于对应的ACPI设备特定方法在O/S层中是存在还是不存在。有利地,并且根据一些实施例,针对硬件端点的错误传播方案可以被改变,而无需改变平台BIOS,而是仅通过更新一个或多个ACPI设备特定方法和O/S处理器。在一些实例中,ACPI设备特定方案和O/S处理器可以被更新(并且错误传播方案由此被改变),而无需重新初始化平台,由此使系统停机时间最小化。
图1是根据一些实施例的平台架构100的框图。平台架构100可以代表服务器运行时架构。架构100可以如本领域中已知的支持用户模式应用和/或虚拟机。
架构100的硬件层110包括中央处理单元(CPU)112,其被配置为从各种硬件端点114-117检测错误。根据一些实施例,硬件端点114-117错误由CPU 112的控制器或者端口检测。实施例可以包括多于一个CPU,并且这样的CPU中的每个CPU可以从任何数目的硬件端点接收错误通知。
硬件层110还包括服务处理器118。服务处理器118可以包括与CPU 112不同并且管理诸如监视环境状况和处理特定错误状况的平台特定功能的微控制器。服务处理器118可以在系统事件日志内维持错误记录以用于宕机后分析,例如,可以包括基板管理控制器的组件。
BIOS层120包括运行时组件,其在BIOS引导期间被初始化。具体而言,系统管理模式(SMM)运行时122被初始化并且被与设备特定错误管理器124相关联。ACPI运行时132页在BIOS引导期间被初始化。
BIOS引导还可以包括对如与被传播给SMM运行时122的SMI(系统管理中断)相反的ACPI系统控制中断(SCI)的错误信令的配置。这一配置可以经由如本领域中已知的平台控制器集线器(未示出)的通用IO(GPIO)设置而被指定。
O/S层130包括在跟随BIOS引导的O/S的引导期间被实例化的运行时组件。错误处理过滤器133可以包括与一个或多个硬件端点相关联的设备特定方法(_DSM)。对错误处理过滤器133的使用将在以下被详细描述。
错误处理器134、内核136和O/S层的O/S事件日志137可以如本领域中已知的操作。例如,对应于具有错误状况的硬件的错误处理器134创建错误分组并且将分组转发给内核136。内核136基于错误分组来创建错误记录并且可以在O/S事件日志137的错误记录138之中日志记录错误记录。在非致命未纠正硬件错误的情况中,内核136可以尝试纠正错误状况。
图2是根据一些实施例的平台200的框图。平台200可以实现架构100,但是实施例并不被限制于此。
平台200包括两个CPU 202和204,其可以包括已知或将变成已知的任何类型的CPU。实施例并不限于包括任何特定数目的CPU的平台。每个CPU 202和204被链接到各种I/O接口,对应的硬件I/O端点可以被安装到这些接口中。
例如,CPU 202被耦合到双列直插式存储器模块(DIMM)212和214。CPU 202包括集成存储器控制器203以与DIMM 212对接。因此,存储器控制器203操作以检测DIMM 212和214中的错误,并且如果可能的话采取适当的纠正动作。存储器控制器203页将错误信息日志记录到例如CPU 202的存储器特定寄存器(MSR)的构造的错误上下文寄存器中。CPU 203被直接耦合到DIMM 213和215并且包括可以如以上描述的操作的存储器控制器205。
CPU 202也被直接耦合到PCIe插槽222、224和226。PCIe插槽222、224和226可以安装提供联网、图形处理、存储或者其他功能的扩展卡。每个扩展卡可以直接通过它的相关联的PCIe插槽222、224或者226以及连接该插槽与CPU 202的总线与CPU 202的PCIe根端口通信。CPU 202的PCIe根端口可以检测其被连接到的任何PCIe端点上的错误。再次,CPU 204也被耦合到PCIe插槽225和227,并且可以包括PCIe根端口以从被安装在其中的PCIe端点检测错误。
CPU 202被耦合到如本领域中已知的平台控制器集线器(PCH)230。PCH 230控制特定数据路径并且支持连同CPU 202和204而被使用的功能。PCH 230被耦合到存储BIOS的闪存239以及基板管理控制器(BMC)240。BMC 240是专用服务处理器,其监视平台200的物理状态,并且可以支持通过管理接口246与系统管理员的带外通信。
图3包括根据一些实施例的过程300的流程图。在一些实施例中,计算设备(例如,计算机服务器)的处理单元(例如,一个或多个处理器、处理核、处理器线程)执行程序代码以使得设备执行过程300。过程300和本文提及的所有其他过程可以被体现在从诸如硬盘、闪存等非瞬态计算机可读介质中的一个或多个被读取的处理器可执行程序代码中,并且人后按照压缩、未编译和/或加密格式被存储。在一些实施例中,硬接线电路可以替代程序代码或者结合程序代码而被使用,以用于根据一些实施例对过程的实现。实施例因此并不限于硬件和软件的任何特定组合。
过程300开始自在S310对存储器错误的检测。如上所述,平台存储器控制器(其可以或者可以不被集成到平台CPU中)可以在S310使用一致错误信令和检测协议检测存储器错误。存储器控制器可以采取纠正动作,并且也可以将对应的错误信息日志记录到平台CPU的构建的错误上下文寄存器中。
日志记录的错误信息使得CPU在S320触发中断。中断可以包括如图1中所示由ACPI运行时组件接收的SCI。接着,在S330,ACPI运行时组件确定错误是应当由BIOS运行时中的基于固件的错误处理器处理,还是由O/S错误处理器处理。
在S330的确定可以包括确定O/S是否包括与错误源相关联的设备特定方法。如果没有这样的方法存在,则流程前进到S340以使用O/S错误处理器(例如,处理器134)处理中断。有利地,这样的错误处理可以前进到接收错误的处理线程,留下其他处理线程来执行O/S功能。
如果设备特定方法存在,在中断在S350由向BIOS运行时(例如,向系统管理模式运行时)注册的错误处理器处理。在这方面,ACPI运行时可以如图1中所示发起系统管理中断(SMI)以触发SMM错误处理器。流程然后从S350继续到S340以向O/S错误处理器传递控制。
过程300无需被限于存储器错误,而是可以被扩展到处理针对任何硬件端点而被检测到的错误。错误检测的特定实现和SCI的发起可以取决于硬件端点而不同。图4的过程400描绘根据一些实施例的对检测到的PCIe错误的处理。
PCIe错误在S410被检测到。被安装在平台中的每个PCIe端点与PCIe根端口相关联。PCIe根端口可以从它的相关联的PCIe设备检测错误。PCIe根端点可以被集成到CPU、PCH或者任何适当的硬件组件中。
响应于对错误的检测,PCIe根端点在S420触发PCIe高级错误报告(AER)消息信号中断(MSI)。MSI由O/S根端点错误处理器接收,O/S根端点错误处理器响应于这一点而触发SCI。如前所述,SCI由ACPI运行时组件接收,ACPI运行时组件在S430确定错误是否应当由BIOS运行时中的基于固件的错误处理器处理。
在S430的确定可以类似于相对于S330如前所述地进行。具体而言,如果与错误源相关联的设备特定的方法存在,则ACPI运行时可以在S440发起SMI以触发对应的SMM错误处理器以处理错误。流程然后前进到S450以将控制返回O/S根端口错误处理器。如果在S430未标识对应的设备特定方法,则错误在S450被返回给O/S根端口错误处理器,而无需将控制首先返回给BIOS。
图5的过程500示出了根据一些实施例的用以处理PCIe错误的备选方式。S510、S520、S530和S540在确定检测到的PCIe错误将由O/S根端口处理器排他地处理的情况中类似于如上所述的。S410、S420、S430和S440来进行。
然而,如果在S530确定检测到的PCIe错误将由SMM处理器处理,则流程首先前进到S550以使用SMM处理器处理错误。在SMM处理器完成它的陈露之后,在S560确定错误是否是可纠正错误。如果是,则SCI在S570被触发以将通知返回给ACPI运行时。如果错误在S560被确定为不可纠正,则不可屏蔽中断(NMI)在S580被触发。NMI被报告给O/S,无论处理器的当前中断优先级水平。NMI通常指示致命硬件错误状况,并且由O/S相印地处理。
图6示出了利用未标识(例如,升级的)PCIe端点对被安装在平台200的插槽222中的PCIe端点的替换。这样的端点的替换通常可以要求固件更新或者至少系统重新引导以确保正确的错误处理。
图7示出了根据一些实施例的用于响应于替换的硬件端点的过程700。在S710,端点在O/S执行期间被替换。例如,在S710的平台(例如,服务器)内的端点的替换期间,平台以完全引导到它的O/S中,并且O/S运行以服务于从应用接收的请求。
接着,贼S720,O/S被更新以利用BIOS错误处理器将端点取消关联。因此假设之前端点与SMM错误处理器相关联,并且它的错误首先如关于过程400和500所述的由SMM错误处理器处理。也如前所述,一些实施例可以使用ACPI设备特定方法将错误源与SMM错误处理器相关联。因此,S720可以包括禁用或者卸载将之前端点与SMM错误处理器相关联的ACPI设备特定方法。O/S然后在S730被更新以包括与替换端点相关联的O/S错误处理器。
在S740,平台被重新引导到现在更新的O/S,而无需执行BIOS。在一些实施例中,S740包括内核软重新引导(KSR),其重新引导O/S而无需重新初始化平台硬件。例如,控制在关机后被传递给驱动器而不是固件,并且直接前进到内核初始化,同时绕过平台初始化、引导管理器和O/S加载器。KSR可以有利地允许对更新的O/S的执行,而同时体验最低平台停机时间。
由于前述,并且根据过程400和500,来自新端点的检测到的错误将由新包括的O/S处理器而不是由与之前端点相关联的SMM处理器处理。这样的布置允许将新端点硬件错误处理引入平台,而不要求固件更新。此外,使用KSR或者其他类似技术,平台停机时间被显著地减少。
本文描述的每个功能组件可以如现有技术中已知的在计算机硬件(集成和/或离散电路组件)中、在程序代码中和/或在执行这样的程序代码的一个或多个计算系统中被实施。这样的计算系统可以包括一个或多个处理单元,该一个或多个处理单元执行被存储在存储器系统中的可执行程序代码。
前述附图代表根据一些实施例的用于描述过程的逻辑架构,并且实际试下你可以包括按照其他方式被布置的更多或者不同的组件。其他拓扑可以连通其他实施例被使用。此外,本文中描述的每个组件或者设备可以由经由任何数目的其他公开和/或私有网络通信的任何数目的设备实现。这样的计算设备中的两个或更多个计算设备可以被定位为相互远离,并且可以经由(多个)网络和/或专用链接的任何已知方式相互通信。每个组件或者设备可以包括适合于提供本文中描述的功能以及任何其他功能的任何数目的硬件和/或软件元素。
本文中描述的实施例仅出于例示的目的。本领域技术人员将认识到其他实施例可以利用对以上描述的实施例的修改或者变更而被实践。

Claims (14)

1.一种计算系统,包括:
I/O硬件端点;
I/O硬件端点控制器,其与所述I/O硬件端点通信并且用以:
检测所述I/O硬件端点上的错误;以及
响应于检测到的错误来触发中断;以及
处理器,用以执行操作系统运行时组件以:
接收所述中断;
响应于接收到的所述中断,确定是使用操作系统处理器还是与所述I/O硬件端点相关联的固件错误处理器处理所述错误;以及
如果确定使用与所述I/O硬件端点相关联的固件运行时错误处理器处理所述错误,触发与所述固件运行时错误处理器相关联的固件中断。
2.根据权利要求1所述的计算系统,其中所述中断是高级配置和电源接口系统控制中断,并且所述操作系统组件是高级配置和电源接口软件驱动器。
3.根据权利要求2所述的计算系统,其中所述固件中断是系统管理中断,并且所述固件运行时错误处理器是系统管理模式错误处理器。
4.根据权利要求2所述的计算系统,其中对使用与所述I/O硬件端点相关联的固件错误处理器处理所述错误的确定包括:
对被注册在所述操作系统中并且与所述I/O硬件端点和所述固件错误处理器相关联的高级配置和电源接口设备特定方法的标识。
5.根据权利要求1所述的计算系统,所述处理器还用以执行所述固件错误处理器,并且在所述固件错误处理器的执行之后,执行与所述I/O硬件端点相关联的操作系统处理器。
6.根据权利要求1所述的计算系统,其中所述I/O硬件端点是存储器设备,其中所述I/O硬件端点控制器是所述处理器内的存储器控制器,并且其中所述中断响应于由所述存储器控制器将错误信息向所述处理器的一个或多个机器特定寄存器中的写入而被触发。
7.根据权利要求1所述的计算系统,其中所述I/O硬件端点是外围设备组件互连快速设备,其中所述I/O硬件端点控制器是根端口控制器,并且其中所述中断被触发到根端口错误处理器。
8.一种计算机实现的方法,包括:
检测I/O硬件端点上的错误;
响应于检测到的错误来触发操作系统中断;
在操作系统组件处接收所述中断;
响应于接收到的所述中断,在所述操作系统组件处确定是使用操作系统处理器还是与所述I/O硬件端点相关联的固件错误处理器处理所述错误;以及
如果确定使用与所述I/O硬件端点相关联的固件运行时错误处理器处理所述错误,触发与所述固件运行时错误处理器相关联的固件中断。
9.根据权利要求8所述的计算机实现的方法,其中所述中断是高级配置和电源接口系统控制中断,并且所述操作系统组件是高级配置和电源接口软件驱动器。
10.根据权利要求9所述的计算机实现的方法,其中所述固件中断是系统管理中断,并且所述固件运行时错误处理器是系统管理模式错误处理器。
11.根据权利要求9所述的计算机实现的方法,其中确定使用与所述I/O硬件端点相关联的固件错误处理器处理所述错误包括:
标识被注册在所述操作系统中并且与所述I/O硬件端点和所述固件错误处理器相关联的高级配置和电源接口设备特定方法。
12.根据权利要求8所述的计算机实现的方法,还包括:
执行所述固件错误处理器;以及
在对所述固件错误处理器的执行之后,执行与所述I/O硬件端点相关联的操作系统处理器。
13.根据权利要求8所述的计算机实现的方法,其中所述I/O硬件端点是存储器设备,其中所述I/O硬件端点控制器是存储器控制器,并且其中所述中断由处理器响应于错误信息向所述处理器的一个或多个机器特定寄存器中的写入触发。
14.根据权利要求8所述的计算机实现的方法,其中所述I/O硬件端点是外围设备组件互连快速设备,其中所述I/O硬件端点控制器是根端口控制器,并且其中所述中断被触发到根端口错误处理器。
CN201980073582.7A 2018-11-08 2019-11-01 用于可配置错误处理的系统 Pending CN112970002A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/184,003 2018-11-08
US16/184,003 US10896087B2 (en) 2018-11-08 2018-11-08 System for configurable error handling
PCT/US2019/059288 WO2020096865A1 (en) 2018-11-08 2019-11-01 System for configurable error handling

Publications (1)

Publication Number Publication Date
CN112970002A true CN112970002A (zh) 2021-06-15

Family

ID=68655691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980073582.7A Pending CN112970002A (zh) 2018-11-08 2019-11-01 用于可配置错误处理的系统

Country Status (4)

Country Link
US (1) US10896087B2 (zh)
EP (1) EP3877843A1 (zh)
CN (1) CN112970002A (zh)
WO (1) WO2020096865A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023225885A1 (en) * 2022-05-25 2023-11-30 Intel Corporation Correctable error counter and leaky bucket for peripheral component interconnect express (pcie) and compute express link (cxl) devices

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11481296B2 (en) * 2018-09-10 2022-10-25 International Business Machines Corporation Detecting configuration errors in multiport I/O cards with simultaneous multi-processing
KR20220059729A (ko) 2020-11-03 2022-05-10 삼성전자주식회사 메모리 모듈 및 메모리 모듈의 동작방법
CN112905376B (zh) * 2021-02-10 2023-01-10 山东英信计算机技术有限公司 一种错误上报的方法、装置及介质
CN113064745B (zh) * 2021-02-20 2022-09-20 山东英信计算机技术有限公司 一种错误信息上报的方法、装置及介质
US11726855B1 (en) * 2022-04-26 2023-08-15 Dell Products L.P. Controlling access to an error record serialization table of an information handlng system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794187A (zh) * 2004-12-21 2006-06-28 日本电气株式会社 计算机系统及处理错误的方法
CN106155826A (zh) * 2015-04-16 2016-11-23 伊姆西公司 用于在总线结构中检测及处理错误的方法和系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7380169B2 (en) * 2004-09-24 2008-05-27 Intel Corporation Converting merge buffer system-kill errors to process-kill errors
US7447934B2 (en) 2005-06-27 2008-11-04 International Business Machines Corporation System and method for using hot plug configuration for PCI error recovery
US7546487B2 (en) * 2005-09-15 2009-06-09 Intel Corporation OS and firmware coordinated error handling using transparent firmware intercept and firmware services
US20080256400A1 (en) * 2007-04-16 2008-10-16 Chih-Cheng Yang System and Method for Information Handling System Error Handling
US8713350B2 (en) * 2009-12-08 2014-04-29 Hewlett-Packard Development Company, L.P. Handling errors in a data processing system
US20170091013A1 (en) * 2015-09-28 2017-03-30 Netapp, Inc. Pcie error reporting and throttling

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794187A (zh) * 2004-12-21 2006-06-28 日本电气株式会社 计算机系统及处理错误的方法
CN106155826A (zh) * 2015-04-16 2016-11-23 伊姆西公司 用于在总线结构中检测及处理错误的方法和系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023225885A1 (en) * 2022-05-25 2023-11-30 Intel Corporation Correctable error counter and leaky bucket for peripheral component interconnect express (pcie) and compute express link (cxl) devices

Also Published As

Publication number Publication date
US10896087B2 (en) 2021-01-19
WO2020096865A1 (en) 2020-05-14
US20200151048A1 (en) 2020-05-14
EP3877843A1 (en) 2021-09-15

Similar Documents

Publication Publication Date Title
US10896087B2 (en) System for configurable error handling
CN107122321B (zh) 硬件修复方法、硬件修复系统以及计算机可读取存储装置
US10353779B2 (en) Systems and methods for detection of firmware image corruption and initiation of recovery
US10055296B2 (en) System and method for selective BIOS restoration
US7111202B2 (en) Autonomous boot failure detection and recovery
US9946553B2 (en) BMC firmware recovery
TWI610167B (zh) 改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置
US10534618B2 (en) Auto bootloader recovery in BMC
US7447934B2 (en) System and method for using hot plug configuration for PCI error recovery
US6505298B1 (en) System using an OS inaccessible interrupt handler to reset the OS when a device driver failed to set a register bit indicating OS hang condition
US20150149815A1 (en) Bios failover update with service processor having direct serial peripheral interface (spi) access
US7984219B2 (en) Enhanced CPU RASUM feature in ISS servers
US11132314B2 (en) System and method to reduce host interrupts for non-critical errors
WO2020239060A1 (zh) 错误恢复的方法和装置
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
US20220214945A1 (en) System Booting Method and Apparatus, Node Device, and Computer-Readable Storage Medium
CN114968382A (zh) 预防停机的方法、系统及bios芯片
US7900033B2 (en) Firmware processing for operating system panic data
JP2002259130A (ja) 情報処理システムおよびその起動制御方法
US11010249B2 (en) Kernel reset to recover from operating system errors
US11314578B2 (en) Information handling system and method to detect and recover from spurious resets of PCIe devices
US20170344360A1 (en) Protecting firmware flashing from power operations
US20030154339A1 (en) System and method for interface isolation and operating system notification during bus errors
JP2004302731A (ja) 情報処理装置および障害診断方法
US20210406113A1 (en) Systems and methods for dynamically resolving hardware failures in an information handling system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination