CN116302625A - 故障上报方法、设备及存储介质 - Google Patents

故障上报方法、设备及存储介质 Download PDF

Info

Publication number
CN116302625A
CN116302625A CN202211091558.6A CN202211091558A CN116302625A CN 116302625 A CN116302625 A CN 116302625A CN 202211091558 A CN202211091558 A CN 202211091558A CN 116302625 A CN116302625 A CN 116302625A
Authority
CN
China
Prior art keywords
cxl
fault
cpu
memory
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.)
Pending
Application number
CN202211091558.6A
Other languages
English (en)
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.)
Henan Kunlun Technology Co ltd
Original Assignee
XFusion Digital Technologies Co 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 XFusion Digital Technologies Co Ltd filed Critical XFusion Digital Technologies Co Ltd
Priority to CN202211091558.6A priority Critical patent/CN116302625A/zh
Publication of CN116302625A publication Critical patent/CN116302625A/zh
Pending legal-status Critical Current

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/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/073Error 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 memory management context, e.g. virtual memory or cache management
    • 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
    • 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

Abstract

本申请提供了一种故障上报方法、设备及存储介质,涉及内存故障技术领域。该故障上报方法,用于包括CXL扩展内存的计算机设备,计算机设备的处理器固件通过接收OS管理单元发送的基于消息信号中断信息所生成的目标指令,该目标指令用于指示获取CXL扩展内存的故障信息,从而实现为CXL扩展内存建立了固件优先上报路径,进而使得处理器固件可以使用主机内存的故障上报路径,将CXL扩展内存的故障信息上报给带外控制器和/或OS管理单元,有助于CXL扩展内存兼容由带外控制器执行的带外内存故障分析方法和/或由OS管理单元执行的带外故障分析方法,以及将主机内存的RAS技术应用于CXL扩展内存,进而有助提高CXL扩展内存的可靠可用可维护性。

Description

故障上报方法、设备及存储介质
技术领域
本申请涉及内存故障技术领域,尤其涉及一种故障上报方法、设备及存储介质。
背景技术
计算快速链路(compute express link,CXL)内存扩展器,通常会携带较大容量的扩展内存,该扩展内存可以与计算机设备的主机内存结合使用。为了保证CXL扩展内存的使用可靠性,对CXL扩展内存进行可靠可用可维护(reliability availabilityserviceability,RAS)诊断是非常必要的。
然而,相关技术中,由于CXL内存扩展器没有固件优先上报路径,导致CXL扩展内存的故障信息,只能全部上报给操作系统OS处理单元,无法上报给处理器固件,而计算机设备的主机内存是通过将故障信息上报给处理器固件实现故障分析的,这也就导致主机内存的故障分析方法无法应用于CXL扩展内存,进而导致CXL扩展内存的RAS较低。
发明内容
本申请实施例提供一种故障上报方法、设备及存储介质,能够为CXL扩展内存建立固件优先上报路径,使得CXL扩展内存的故障信息优先上报给处理器固件,从而使得主机内存的故障分析方法可以用于CXL扩展内存,有助于提高CXL扩展内存的可靠可用可维护性。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,提供了一种故障上报方法,用于计算机设备,计算机设备包括中央处理器和计算快速链路CXL扩展内存,该方法包括:CPU中的处理器固件接收CPU中的操作系统OS管理单元发送的目标指令;目标指令为CPU中的OS管理单元响应于消息信号中断信息所生成的,目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息;消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号;CPU中的处理器固件响应于目标指令,获取CXL扩展内存的故障信息。
该方案中,处理器固件通过接收OS管理单元发送的目标指令,该目标指令用于指示获取CXL扩展内存的故障信息,从而为CXL扩展内存建立了固件优先上报路径,使得处理器固件具有了固件优先处理故障的能力,进而使得处理器固件可以使用主机内存的故障上报路径,将CXL扩展内存的故障信息上报给带外控制器和OS管理单元,有助于CXL扩展内存兼容相关技术中由带外控制器执行的带外内存故障分析方法和/或由OS管理单元执行的带外故障分析方法,以及将主机内存的RAS技术应用于CXL扩展内存,进而有助提高CXL扩展内存的可靠可用可维护性。此外,由于本申请实施例的方案可以基于计算机设备现有的硬件结构实现,也即,不需要增加新的硬件,有助于降低硬件成本。
在一种可能的实现方式中,目标指令为系统管理中断指令。
在该实现方式中,通过系统管理中断指令获取CXL扩展内存的故障信息,有助于提高处理器固件获取故障信息的效率,进而保证及时处理CXL扩展内存的故障信息。
另一种可能的实现方式中,目标指令为目标函数的调用指令,目标函数用于获取CXL扩展内存的故障信息。
在该实现方式中,通过目标函数获取CXL扩展内存的故障信息,可以减少处理器固件中断的次数,有助于避免为获取CXL扩展内存的故障信息而影响处理器固件所处理的其他任务。
另一种可能的实现方式中,计算机设备还包括带外控制器,该方法还包括:CPU中的处理器固件向带外控制器发送故障信息,故障信息用于带外控制器生成CXL扩展内存的故障分析结果。
在该实现方式中,通过向带外控制器发送CXL扩展内存的故障信息,从而使得带外控制器可以根据故障信息生成CXL扩展内存的故障分析结果,进而实现将当前主流的带外故障分析体系应用于CXL扩展内存,有助于提高CXL扩展内存的可靠可用可维护性。
另一种可能的实现方式中,该方法还包括:在故障信息指示CXL扩展内存的故障严重程度满足预设条件的情况下,CPU中的处理器固件向CPU中的OS管理单元发送故障信息,故障信息用于CPU中的OS管理单元生成CXL扩展内存的故障分析结果。
在该实现方式中,通过设置在故障信息满足预设条件时,才将CXL扩展内存的故障信息上报给OS管理单元,从而实现对OS管理单元选择性上报CXL扩展内存的故障信息,例如,仅在故障严重程度比较高时才上报,从而有助于避免OS管理单元为处理CXL扩展内存的故障而影响正在执行的业务,进而有助于降低CXL扩展内的故障对OS管理单元所执行任务的影响。
另一种可能的实现方式中,CPU中的OS管理单元包括CXL转发驱动单元,CXL转发驱动单元用于接收CXL扩展内存的消息信号中断信息,以及根据消息信号中断信息触发系统管理中断至CPU中的处理器固件,消息信号中断信息用于指示CPU中的OS管理单元触发转发系统管理中断指令至CPU中的处理器固件。
在该实现方式中,通过设置OS管理单元中包括CXL转发驱动单元,从而可以在CXL接收到CXL扩展内存的消息信号中断信息后,触发系统管理中断指令至处理器固件,由于该CXL转发驱动单元仅用于将接收到的消息信号中断信息转换成处理器固件接收的系统管理中断指令,而该操作的实现与CXL内存扩展器的供应商无关,也即,CXL转发驱动单元不必依赖于CXL内存扩展器的供应商,从而使得CXL转发驱动单元不必随着CXL内存扩展器的供应商而变化,能够适用于不同的OS管理单元。
第二方面,提供了一种故障上报方法,用于计算机设备,计算机设备包括中央处理器CPU和计算快速链路CXL扩展内存,该方法包括:CPU中的操作系统OS管理单元接收消息信号中断信息,消息信号中断信息用于指示CPU中的OS管理单元指示CPU中的处理器固件获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号;CPU中的OS管理单元响应于消息信号中断信息,向CPU中的处理器固件发送目标指令,目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息。
在该方案中,OS管理在接收到消息信号中断信息号后,响应于该消息信号中断信息,生成目标指令并发送至处理器固件,以指示处理器固件获取CXL扩展内存的故障信息,从而为CXL扩展内存建立了固件优先上报路径,使得处理器固件具备了固件优先处理故障的能力,进而使得主机内存的故障分析方法以及RAS技术能够应用于CXL扩展内存,有助于提高CXL扩展内存的可靠可用可维护性。
在一种可能的实现方式中,目标指令为系统管理中断指令。
在该实现方式中,通过系统管理中断指令,指示处理器固件获取CXL扩展内存的故障信息,有助于提高处理器固件获取故障信息的效率,进而保证处理器固件能够及时处理CXL扩展内存的故障信息。
另一种可能的实现方式中,目标指令为目标函数的调用指令,目标函数用于获取CXL扩展内存的故障信息。
在该实现方式中,通过调用处理器固件中的目标函数,实现获取CXL扩展内存的故障信息,有助于减少处理器固件中断的次数,进而有助于避免而影响处理器固件所处理的其他任务。
另一种可能的实现方式中,方法还包括:CPU中的OS管理单元接收CPU中的处理器固件发送的CXL扩展内存的故障信息,故障信息指示CXL扩展内存的故障严重程度满足预设条件;CPU中的OS管理单元根据故障信息,生成CXL扩展内存的故障分析结果。
在该实现方式中,OS管理单元通过接收满足预设条件故障信息,从而实现对OS管理单元所接收的故障信息进行筛选,进而实现减少OS管理单元所接收的故障信息,有助于降低CXL扩展内存的故障信息对OS管理单元所执行业务的影响。
第三方面,提供了一种故障上报方法,用于计算机设备,计算机设备包括带外控制器和计算快速链路CXL扩展内存,该方法包括:带外控制器接收CPU中的处理器固件发送的CXL扩展内存的故障信息;带外控制器根据故障信息,生成CXL扩展内存的故障分析结果。
在该方案中,通过将CXL扩展内存的故障信息发送给带外控制器,从而实现使用当前主流的基于带外的故障分析技术对CXL扩展内存的故障信息进行故障分析,有助于提高CXL扩展内存的可靠可用可维护性。
第四方面,提供了一种故障上报装置,该装置包括:用于执行第一方面提供的任意一种方法的功能单元,各个功能单元所执行的动作通过硬件实现或通过硬件执行相应的软件实现。例如,该故障上报装置可以包括:接收单元和处理单元;接收单元,用于接收CPU中的操作系统OS管理单元发送的目标指令;目标指令为CPU中的OS管理单元响应于消息信号中断信息所生成的,目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号;处理单元,用于响应于目标指令,获取CXL扩展内存的故障信息。
第五方面,提供了一种故障上报装置,该装置包括:用于执行第二方面提供的任意一种方法的功能单元,各个功能单元所执行的动作通过硬件实现或通过硬件执行相应的软件实现。例如,该故障上报装置可以包括处理单元;处理单元,用于接收消息信号中断信息,消息信号中断信息用于指示处理单元指示CPU中的操作系统OS管理单元获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号;处理单元,还用于响应于消息信号中断信息,向CPU中的处理器固件发送目标指令,目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息。
第六方面,提供了一种故障上报装置,该装置包括:用于执行第三方面提供的任意一种方法的功能单元,各个功能单元所执行的动作通过硬件实现或通过硬件执行相应的软件实现。例如,该故障上报装置可以包括接收单元和分析单元;接收单元,用于接收CPU中的处理器固件发送的CXL扩展内存的故障信息;分析单元,用于根据故障信息,生成CXL扩展内存的故障分析结果。
第七方面,提供了一种计算机设备,包括:中央处理器CPU和CXL扩展内存。其中,CPU,用于接收目标指令,目标指令为CPU响应于消息信号中断信息所产生的,目标指令用于指示CPU获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号;CPU,还用于响应于目标指令,获取CXL扩展内存的故障信息。
在一种可能的实现方式中,目标指令为系统管理中断指令。
另一种可能的实现方式中,CPU,还用于接收CXL扩展内存的消息信号中断信息,消息信号中断信息具体用于指示CPU触发系统管理中断指令;CPU,还用于响应于消息信号中断信息,触发系统管理中断指令。
另一种可能的实现方式中,目标指令为目标函数的调用指令,目标函数用于获取CXL扩展内存的故障信息。
另一种可能的实现方式中,CPU,还用于接收CXL扩展内存的消息信号中断信息,消息信号中断信息具体用于指示CPU调用目标函数;CPU,还用于响应于消息信号中断信息,生成目标函数的调用指令。
另一种可能的实现方式中,CPU,还用于向带外控制器发送CXL扩展内存的故障信息,故障信息用于带外控制器生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,计算机设备还包括带外控制器。带外控制器,用于接收CPU发送的CXL扩展内存的故障信息,以及根据故障信息生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,CPU,还用于根据故障信息,生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,CPU中运行有CXL转发驱动单元,CXL转发驱动单元用于接收CXL扩展内存的消息信号中断信息,以及根据消息信号中断信息触发系统管理中断指令,消息信号中断信息用于指示CPU触发系统管理中断指令。
第八方面,提供了一种计算机设备,包括:处理器固件和操作系统OS管理单元。其中,OS管理单元,用于接收消息信号中断信息,消息信号中断信息用于指示OS管理单元指示处理器固件获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号;OS管理单元,还用于响应于消息信号中断信息,向处理器固件发送目标指令,目标指令用于指示处理器固件获取CXL扩展内存的故障信息;处理器固件,用于接收OS管理单元发送的目标指令;处理器固件,还用于响应于目标指令,获取CXL扩展内存的故障信息。
在一种可能的实现方式中,目标指令为系统管理中断指令。
另一种可能的实现方式中,OS管理单元,还用于接收CXL扩展内存的消息信号中断信息,消息信号中断信息具体用于指示OS管理单元触发系统管理中断指令;OS管理单元,还用于响应于消息信号中断信息,触发系统管理中断指令。
另一种可能的实现方式中,目标指令为目标函数的调用指令,目标函数用于获取CXL扩展内存的故障信息。
另一种可能的实现方式中,OS管理单元,还用于接收CXL扩展内存的消息信号中断信息,消息信号中断信息具体用于指示OS管理单元调用目标函数;OS管理单元,还用于响应于消息信号中断信息,生成目标函数的调用指令,并向处理器固件发送目标函数的调用指令。
另一种可能的实现方式中,处理器固件,还用于向带外管理单元发送故障信息,故障信息用于带外管理单元生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,计算机设备还包括带外管理单元。带外管理单元,用于接收处理器固件发送的CXL扩展内存的故障信息;带外管理单元,还用于根据故障信息,生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,处理器固件,还用于在故障信息指示CXL扩展内存的故障严重程度满足预设条件的情况下,向OS管理单元发送故障信息,故障信息用于OS管理单元生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,OS管理单元,还用于接收处理器固件发送的CXL扩展内存的故障信息,故障信息满足预设条件;OS管理单元,还用于根据故障信息,生成CXL扩展内存的故障分析结果。
另一种可能的实现方式中,OS管理单元中运行有CXL转发驱动单元,CXL转发驱动单元用于接收CXL扩展内存的消息信号中断信息,以及根据消息信号中断信息触发系统管理中断指令至处理器固件。
第九方面,提供了一种计算机设备,包括:包括:处理器和存储器,处理器与存储器连接。存储器用于存储计算机执行指令,处理器执行存储器存储的计算机执行指令,从而实现第一方面提供的任意一种方法,或第二方面提供的任意一种方法。
第十方面,提供了一种芯片,该芯片包括:处理器和接口电路;接口电路,用于接收代码指令并传输至处理器;处理器,用于运行代码指令以执行上述第一方面提供的任意一种方法,或执行上述第二方面提供的任意一种方法。
第十一方面,提供了一种计算机可读存储介质,存储有计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行上述第一方面提供的任意一种方法,或执行上述第二方面提供的任意一种方法。
第十二方面,提供了一种计算机程序产品,包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行上述第一方面提供的任意一种方法,或执行上述第二方面提供的任意一种方法。
其中,第四方面至第十二方面中任一种设计方式所带来的技术效果可以参见第一方面至第三方面中不同实现方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种故障上报方法的原理图;
图2为本申请实施例提供的一种计算机设备的架构图;
图3为本申请实施例提供的一种故障上报方法的流程图;
图4为本申请实施例提供的一种故障上报方法的流程图;
图5为本申请实施例提供的另一种故障上报方法的流程图;
图6为本申请实施例提供的另一种故障上报方法的流程图;
图7为本申请实施例提供的另一种故障上报方法的流程图;
图8为本申请实施例提供的一种故障上报装置的框图;
图9为本申请实施例提供的另一种故障上报装置的框图;
图10为本申请实施例提供的另一种故障上报装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
其中,在本申请的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;本申请中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。
并且,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。同时,在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
首先,对本申请实施例的应用场景进行示例性介绍。
随着数据爆炸式增长,异构计算的应用越来越广泛,高速串行计算机扩展总线标准(peripheral component interconnect express,PCIE)已经无法成为CPU与图形处理器(graphics processing unit,GPU)、现场可编程逻辑门阵列(field programmable gatearray,FPGA)或其他加速器之间沟通的最佳语言。为了达到最佳的计算效果,相关技术中提供了计算快速链路(compute express link,CXL),CXL作为一种开放性互联协议,能够让CPU与GPU、FPGA或其他加速器之间实现高速、高效的互联,从而满足高性能的异构计算的要求。由于CXL与PCIE是兼容的,因此,CXL与PCIE可以采用同样的插槽。插槽上电启动时,通过识别插槽上的设备是CXL设备或PCIE设备,确定采用CXL协议或PCIE协议。
其中,CXL设备,也称为CXL内存扩展器,通常会携带较大容量的扩展内存,该扩展内存可以与计算机设备的主机内存结合使用。为了保证CXL扩展内存的使用可靠性,计算机设备在使用CXL扩展内存的过程中,需要获取CX扩展内存的故障信息。
如图1所示,相关技术中,通过在CPU上的操作系统OS管理单元中安装CXL内存扩展器供应商特定的驱动单元,实现在使用CXL扩展内存的过程中,若CXL扩展内存发生故障,则CXL内存扩展器会获取CXL扩展内存的故障信息,并将故障信息上报给供应商特定的驱动单元,从而实现将CXL扩展内存的故障信息上报给CPU中的OS管理单元。
然而,由于当前主机内存的故障上报路径通常是将内存的故障信息上报给CPU的处理器固件,并由处理器固件将故障信息上报给带外控制器,因此,相关技术中的将故障信息上报给OS管理单元的故障上报方式,与当前主机内存的故障上报路径不同,导致当前主机内存的故障分析方法无法应用于CXL扩展内存,进而导致CXL扩展内存的RAS较低。
有鉴于此,本申请下述实施例提供了一种故障上报方法,处理器固件通过接收OS管理单元发送的目标指令,该目标指令用于指示处理器固件获取CXL扩展内存的故障信息,从而实现为CXL扩展内存建立固件优先上报路径,使得处理器固件具有了固件优先处理故障的能力,进而使得处理器固件可以使用主机内存的故障上报路径,将CXL扩展内存的故障信息上报给带外控制器和OS管理单元,有助于CXL扩展内存兼容相关技术中由带外控制器执行的带外内存故障分析方法和/或由OS管理单元执行的带外故障分析方法,以及将主机内存的RAS技术应用于CXL扩展内存,进而有助提高CXL扩展内存的可靠可用可维护性。此外,由于本申请实施例的方案可以基于计算机设备现有的硬件结构实现,也即,不需要增加新的硬件,有助于降低硬件成本。
其次,对本申请实施例的网络架构进行示例性介绍。
图2示出了本申请实施例提供的一种计算机设备的示意图。计算设备可以为服务器,在硬件方面,该计算机设备包括中央处理器CPU、带外控制器、CXL扩展内存以及CXL内存扩展器。其中,带外控制器可以通过计算机设备的带外管理接口与CPU进行通信,CXL内存扩展器通过总线(如PCIE总线)与CPU进行通信。在软件方面,该计算机设备包括操作系统OS管理单元、处理器固件、带外管理单元、扩展器控制单元。其中,OS管理单元和处理器固件在CPU中运行,带外管理单元在带外控制器中运行,扩展器控制单元可以在CXL内存扩展器中运行,或者,也可以在CPU中运行。
需要说明的,下述实施例中描述的CXL内存扩展器执行某个步骤(如以下的S401),可以是硬件触发执行的,如CXL内存扩展器上接收到CXL扩展内存的故障信号后执行的,或者,也可以是软件触发执行的,如CPU调用扩展器控制单元触发CXL执行的。
其中,OS管理单元可以为OS自带的系统管理单元,或者,也可以为OS中安装的设备管理代理程序,本申请实施例对此不做限制。
需要说明的,下述实施例中描述的CPU的OS管理单元执行某个步骤(如以下的S402),可以理解为是:中央处理器CPU调用OS管理单元执行该步骤。
其中,带外控制器是独立于中央处理器CPU之外的带外处理器。带外控制器可以包括计算机设备外部的监控管理单元、处理器外的管理芯片中的管理系统、计算机设备基板管理单元(baseboard management controller,BMC)、系统管理模块(system managementmode,SMM)等。
需要说明的,本申请对带外控制器的具体形式并不限定,以上仅为示例性说明。在下述实施例中,仅以带外控制器为BMC为例进行说明。
需要说明的,下述实施例中描述的带外控制器执行某个步骤(如以下的S602),可以理解为是:带外控制器调用带外管理单元功能执行该步骤。
处理器固件(也称为处理器固件程序)可以为Firmware、基本输入输出系统(basicinput output system,BIOS)、管理引擎(management engine,ME)、微码或智能管理单元(intelligent management unit,IMU)等固件。需要说明的,本申请实施例对处理器固件的具体形式并不限定,以上仅为示例性说明。在下述实施例中,仅以处理器固件为BIOS为例进行说明。
需要说明的,下述实施例中描述的CPU的处理器固件执行某个步骤(如以下的S404),可以理解为是:中央处理器CPU调用处理器固件执行该步骤。
其中,CXL扩展内存可以是动态随机存取存储器(dynamic random accessmemory,DRAM)、静态随机存取存储器(static random access memory,SRAM)等。例如,同步动态随机存取存储器(synchronous random access memory,DRAM)、双倍速率同步动态随机存储器DDR(double datarate)SDRAM等。其中,CXL扩展内存包括至少一个内存芯片(device),每个内存芯片可以被划分为指示一个存储阵列组(bankgroup),每个存储阵列组包括多个存储阵列(bank),每个存储阵列划分为多个存储单元(cell),每个存储单元具有一个行(row)地址和一个列(column)地址,每个存储单元包括一个或多个比特位。在一种划分方式中,内存从上级至下级可以依次划分为内存芯片、存储阵列组、存储阵列,存储行/存储列、存储单元、比特位。
在一些实施例中,CXL内存扩展器匹配CXL协议1.1。在另一些实施例中CXL扩展器还可以匹配CXL协议1.0、CXL协议2.0或CXL协议3.0等。
需要说明的,本申请实施例可以适用于任意版本的CXL协议。
需要说明的,本申请实施例描述的网络架构以及应用场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
以下,对本申请涉及的关键术语进行简要介绍。
主机内存RAS技术,是为了提升计算机设备的主机内存的可靠性、可服务性、可实用性而提出的内存修复技术,可以包括软件RAS技术和硬件RAS技术。其中,软件RAS技术包括内存隔离页技术等。软件RAS技术依赖于OS管理单元,具体地,处理器固件在检测到主机内存错误之后,通过系统管理中断(system management interrupt,SMI)中断将该错误上报至OS管理单元,OS管理单元在用户业务(即应用层正在执行的业务)不中断的情况下,实时响应SMI中断信息,从而对发生错误的主机内存的内存页进行隔离。隔离之后,被隔离的内存页不能再被应用层使用,因此,可以保证应用数据允许在健康的内存地址空间中。
硬件RAS技术包括自适应双颗粒数据纠正(adaptive double device datacorrection,ADDDC)、单颗粒数据纠正(single-device date correction,SDDC)、内存镜像(memory mirror)、内存热备(rank sparing)、SMI风暴抑制等技术。硬件RAS技术强依赖于处理器固件。
为了便于理解,以下结合附图对本申请提供的故障上报方法进行示例性介绍,该故障上报方法适用于图2所示的计算机设备。
图3是根据一示例性实施例示出的一种故障上报方法的流程图,示例性的,该方法包括S301-S505。
S301:在CXL扩展内存发生故障时,CXL内存扩展器向CPU的OS管理单元发送消息信号中断信息。其中,消息信号中断信息用于指示OS管理单元触发系统管理中断指令。
其中,消息信号中断信息可以是MSI(message signaled interrupt)或MSIX(message signaled interrupt eXtended)。
在一些实施例中,CXL内存扩展器感知到CXL扩展内存发生故障时,生成消息信号中断信息,并将该消息信号中断信息发送至OS管理单元,该消息信号中断信息用于指示OS管单元触发系统管理中断指令。示例性的,该消息信号中断信息通过CXL内存扩展器与CPU之间的总线发送至OS管理单元,例如,该总线可以是PICE总线。
在一些实施例中,CXL内存扩展器感知到CXL扩展内存发生故障时,还可以采集CXL扩展内存的故障信息,并记录到CXL内存控制器中的故障日志(Error Log)单元。
在另一些实施例中,CXL内存扩展器还可以在处理器固件请求读取CXL扩展内存的故障信息时,再采集CXL扩展内存的故障信息。
可选地,故障信息包括故障地址信息。其中,故障地址信息包括内存芯片标识、存储阵列组标识、存储阵列标识、存储单元行标识、存储单元列标识、比特标识等。
在一些实施例中,故障信息还可以包括故障类型信息,故障类型信息包括可纠正错误(corrected error,CE)和不可纠正错误(uncorrected error,UCE)。进一步地,可纠正错误可以是巡检可纠正错误(CE patrol error)、读写可纠正错误(CE read/writeerror)、搬移可纠正错误(CE sparing error)、镜像回写失败错误(mirrorscrub failovererror)、镜像回写成功错误(mirrorscrub error)中的任一项。不可纠正错误可以是突发致命错误(fatal error)、选择处理(SW recoverable action option,SRAO)错误、不需要处理(uncorrected no action,UCNA)错误和必须处理(SW recoverable action required,SRAR)错误、巡检不可纠正错误(UCE patrol error)中的任一项。
在一些实施例中,故障信息还可以包括CXL扩展内存的温度信息。
上述实施例中,通过设置故障信息包括故障地址信息、故障类型信息、CXL扩展内存的温度信息等,有助于提高后续进行故障分析的准确性。
S302:CPU的OS管理单元接收CXL内存扩展器发送的消息信号中断信息。
可选地,OS管理单元中运行有CXL转发驱动(Cxl Forwarding Driver)单元。CXL转发驱动单元用于接收CXL扩展内存的消息信号中断信息。
S303:CPU中的OS管理单元响应于消息信号中断信息,向CPU中的处理器固件发送目标指令;目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息。
在一些实施例中,CPU中的OS管理单元响应于消息信号中断信息,向CPU中的处理器固件发送系统管理中断指令(即目标指令)。关于该实施例的具体实现方式,将在图4所示的实施例中进行说明,此处不再细述。
在另一些实施例中,CPU中的OS管理单元响应于消息信号中断信息,向CPU中处理器固件发送目标函数的调用指令(即目标指令)。关于该实施例的具体实现方式,将在图5所示的实施例中进行说明,此处不再细述。
S304:CPU的处理器固件接收CPU的OS管理单元发送的目标指令。
S305:CPU中的处理器固件响应于目标指令,获取CXL扩展内存的故障信息。
在一些实施例中,CPU中的处理器固件通过调用CXL故障处理单元,获取CXL扩展内存的故障信息。关于该实施例的具体实现方式,将在图4所示的实施例中进行说明,此处不再细述。
在另一些实施例中,CPU中的处理器固件通过执行目标函数,获取CXL扩展内存的故障信息。关于该实施例的具体实现方式,将在图5所示的实施例中进行说明,此处不再细述。
上述实施例中,处理器固件通过接收OS管理单元发送的目标指令,该目标指令用于指示获取CXL扩展内存的故障信息,从而为CXL扩展内存建立了固件优先上报路径,使得处理器固件具有了固件优先处理故障的能力,进而使得处理器固件可以使用主机内存的故障上报路径,将CXL扩展内存的故障信息上报给带外控制器和OS管理单元,有助于CXL扩展内存兼容相关技术中由带外控制器执行的带外内存故障分析方法和/或由OS管理单元执行的带外故障分析方法,以及将主机内存的RAS技术应用于CXL扩展内存,进而有助提高CXL扩展内存的可靠可用可维护性。此外,由于本申请实施例的方案可以基于计算机设备现有的硬件结构实现,也即,不需要增加新的硬件,有助于降低硬件成本。
以上实施例描述的是本申请实施例提供的一种故障上报方法,以下,本申请实施例还提供该故障上报方法的一种具体实现方式,如图4所示的故障上报方法。以下,仅对图4所示实施例与图3所示实施例的不同之处进行具体阐述,而对于相同之处则不再细述。
图4是根据一示例性实施例示出的一种故障上报方法的流程图,示例性的,该方法包括S401-S405。
S401-S402:参见S301-S302。
S403:CPU的OS管理单元响应于消息信号中断信息,触发系统管理中断指令至处理器固件。系统管理中断指令用于指示处理器固件获取CXL扩展内存的故障信息。
其中,系统管理中断指令为SMI(system management interrupt)。
需要说明的,S403为S303的一种具体实现方式。
在一些实施例中,OS管理单元在接收到CXL扩展内存的消息信号中断信息后,响应于消息信息中断,通过执行写操作触发系统管理中断至处理器固件。例如,对于X86体系的CPU,写操作可以是写IO端口0xB2。
可选地,CXL转发驱动单元还用于根据消息信号中断信息,触发系统管理中断至处理器固件。示例性的,CXL转发驱动接收到CXL扩展内存的消息信号中断信息后,响应于该消息信号中断信息,触发系统管理中断至处理器固件。
上述实施例中,OS管理在接收到消息信号中断信息号后,响应于该消息信号中断信息,触发系统管理中断指令至处理器固件,以通知处理器固件获取CXL扩展内存的故障信息,实现了将CXL扩展内存的故障中断信息转发给处理器固件,使得处理器固件具备了固件优先处理故障的能力,从而为CXL扩展内存建立了固件优先上报路径,进而使得主机内存的故障分析方法以及RAS技术能够应用于CXL扩展内存,有助于提高CXL扩展内存的可靠可用可维护性。
S404:CPU的处理器固件接收OS管理单元触发的系统管理中断指令。
需要说明的,S404为S304的一种具体实现方式。
在一些实施例中,处理器固件和OS管理单元预先确定系统管理中断指令所指示的内容,例如,处理器固件与CXL转发驱动单元预先确定系统管理中断指令与获取CXL扩展内存的故障信息之间的对应关系,从而在处理器固件接收到系统管理中断指令后,可以根据系统管理中断指令所指示的内容,执行相应的操作。
需要说明的,不同的系统管理中断指令所指示的内容不同。其中,不同的系统管理中断配置有不同的中断号,该中断号用于指示待执行的内容,如,获取CXL扩展内存的故障信息。
S405:CPU的处理器固件响应于系统管理中断指令,获取CXL扩展内存的故障信息。
需要说明的,S405为S305的一种具体实现方式。
可选地,处理器固件中运行有CXL故障处理(CXL RAS Handler)单元。该CXL故障处理单元用于读取CXL扩展内存的故障日志,从而实现获取CXL扩展内存的故障信息。
在一些实施例中,处理器固件在接收到系统管理中断后,根据系统管理中断指令所指示的内容,调用CXL故障处理单元,获取CXL扩展内存的故障信息。例如,可以从CXL内存控制器中的故障日志(Error Log)单元中获取CXL扩展内存的故障信息。
上述实施例中,处理器固件通过接收OS管理单元转发的系统管理中断指令,该系统管理中断指令为OS管理单元根据接收到的CXL内存扩展器的消息信号中断信息触发的,实现接收CXL扩展内存的内存故障信号,并根据接收到的系统管理中断指令,获取CXL扩展内存的故障信息,从而为CXL扩展内存建立了固件优先上报路径,使得处理器固件具有了固件优先处理故障的能力,进而使得处理器固件可以使用主机内存的故障上报路径,将CXL扩展内存的故障信息上报给带外控制器和OS管理单元,有助于CXL扩展内存兼容相关技术中由带外控制器执行的带外内存故障分析方法和/或由OS管理单元执行的带外故障分析方法,以及将主机内存的RAS技术应用于CXL扩展内存,进而有助提高CXL扩展内存的可靠可用可维护性。此外,由于本申请实施例的方案可以基于计算机设备现有的硬件结构实现,也即,不需要增加新的硬件,有助于降低硬件成本。
以下,本申请实施例还提供该故障上报方法的另一种具体实现方式,如图5所示的故障上报方法。以下,仅对图5所示实施例与图3所示实施例的不同之处进行具体阐述,而对于相同之处则不再细述。
图5是根据一示例性实施例示出的一种故障上报方法的流程图,示例性的,该方法包括S501-S506。
S501-S502:参见S301-S302。
S503:OS管理单元响应于消息信号中断信息,生成目标函数的调用指令。其中,目标函数用于获取CXL扩展内存的故障信息。
在一些实施例中,OS管理单元基于ASL-Methods(ACPI Source LanguageMethods)生成目标函数的调用指令。其中,Methods是内核(kernel)调用处理器固件中函数执行指令操作的一种方式。
需要说明的,OS管理单元生成目标函数的调用指令的方法,与内核调用处理器固件中Methods函数的原理相同,此处不再细述。
S504:OS管理单元向处理器固件发送目标函数的调用指令。
需要说明的,S503-S504为S303的另一种具体实现方式。
上述实施例中,OS管理单元在接收到消息信号中断信息后,响应于该消息信号中断信息,生成目标函数的调用指令并发送至处理器固件,以调用处理器固件中的目标函数获取CXL扩展内存的故障信息,使得处理器固件具备了固件优先处理故障的能力,从而为CXL扩展内存建立了固件优先上报路径,进而使得主机内存的故障分析方法以及RAS技术能够应用于CXL扩展内存,有助于提高CXL扩展内存的可靠可用可维护性。
S505:CPU的处理器固件接收目标函数的调用指令。
需要说明的,S505为S304的一种具体实现方式。
在一些实施例中,目标函数在处理器固件中以运行时服务(runtime service)的方式存在,也就是说,目标函数在操作系统运行阶段启用。
S506:CPU的处理器固件响应于目标函数的调用指令,执行目标函数,以获取CXL扩展内存的故障信息。
需要说明的,S506为S305的一种具体实现方式。
上述实施例中,处理器固件通过接收OS管理单元发送的目标函数的调用指令,该目标函数用于获取CXL扩展内存的故障信息,从而为CXL扩展内存建立了固件优先上报路径,使得处理器固件具有了固件优先处理故障的能力,进而使得处理器固件可以使用主机内存的故障上报路径,将CXL扩展内存的故障信息上报给带外控制器和OS管理单元,有助于CXL扩展内存兼容相关技术中由带外控制器执行的带外内存故障分析方法和/或由OS管理单元执行的带内故障分析方法,以及将主机内存的RAS技术应用于CXL扩展内存,进而有助提高CXL扩展内存的可靠可用可维护性。此外,由于本申请实施例的方案可以基于计算机设备现有的硬件结构实现,也即,不需要增加新的硬件,有助于降低硬件成本。
图6是根据一示例性实施例示出的一种故障上报方法的流程图,示例性的,该方法包括S601-S605。
S601:CPU的处理器固件判断故障信息是否满足预设条件。
若判断结果为是,则执行S602,若判断结果为否,则结束。
在一些实施例中,预设条件为故障信息所指示的故障类型为不可纠正错误,这样,就可以仅在CXL扩展内存发生不可纠正错误时,才将OS管理单元发送故障信息,从而在CXL扩展内存的故障严重程度比较高时,才通知OS管理单元CXL扩展内存发生故障,有助于降低CXL扩展内存的故障对OS管理单元所执行业务的影响。
S602:CPU的处理器固件向CPU的OS管理单元发送CXL扩展内存的故障信息。
其中,处理器固件可以通过高级平台故障接口(ACPI Platform ErrorInterface,APEI)将CXL扩展内存的故障信息上报给OS管理单元。
S603:CPU的OS管理单元接收CPU的处理器固件发送的CXL扩展内存的故障信息。
其中,OS管理单元可以通过APEI接收处理器固件上报的CXL扩展内存的故障信息。
上述实施例中,OS管理单元通过接收满足预设条件故障信息,从而实现对OS管理单元所接收的故障信息进行筛选,进而实现减少OS管理单元所接收的故障信息,有助于降低CXL扩展内存的故障信息对OS管理单元所执行业务的影响。
S604:CPU的OS管理单元根据故障信息,生成CXL扩展内存的故障分析结果。
在一些实施例中,故障分析结果包括故障地址信息。另外,故障分析结果还可以包括故障修复方式和/或故障地址信息所指示的物理位置所属的故障模式。其中,故障模式包括以下任一种:页故障、比特故障、行故障和存储阵列故障。故障修复方式包括以下任一种:页隔离、比特隔离、行隔离和存储阵列隔离。需要说明的,OS管理单元根据CXL扩展内存的故障信息进行故障分析的方法,可以参考相关技术中OS管理单元根据计算机设备的主机内存的故障信息进行故障分析的方法,此处不再赘述。
可选地,故障上报方法还包括:CPU的OS管理单元接收处理器固件发送的故障分析结果,故障分析结果为带外控制器生成的。
在一些实施例中,带外控制器得到故障分析结果后,将故障分析结果发送给处理器固件,在故障分析结果指示CXL扩展内存需要进行页隔离修复时,处理器固件将故障分析结果发送给OS管理单元,以便OS管理单元根据故障分析结果进行页隔离修复。
可选地,S605:CPU的OS管理单元根据故障分析结果,对CXL扩展内存进行故障修复。
可以理解的,S605中的故障分析结果,可以是S604中OS管理单元生成的故障分析结果,或者,还可以是OS管理单元接收到的由带外控制器生成的故障分析结果。
在一些实施例中,OS管理单元可以对CXL扩展内存执行页隔离修复等操作。
需要说明的,OS管理单元根据故障分析结果对CXL扩展内存进行故障修复的方法,可以参考相关技术中OS管理单元对计算机设备的主机内存进行故障修复的方法,此处不再赘述。
上述实施例中,通过将故障分析结果发送给OS管理单元,从而实现由OS管理单元根据分析结果对CXL扩展内存进行故障修复,有助于提高CXL扩展内存的可靠可用可维护性。
图7是根据一示例性实施例示出的一种故障上报方法的流程图,示例性的,该方法包括S701-S704。
S701:CPU的处理器固件向带外控制器发送CXL扩展内存的故障信息。
在一些实施例中,处理器固件通过智能平台管理接口(Intelligent PlatformManagement Interface,IPMI)将CXL扩展内存的故障信息上报给带外控制器。
S702:带外控制器接收处理器固件发送的CXL扩展内存的故障信息。
在一些实施例中,带外控制器通过IPMI接收处理器固件发送的故障信息。
S703:带外控制器根据故障信息,生成CXL扩展内存的故障分析结果。
需要说明的,关于故障分析结果的相关说明,可以参考上述S604,此处不再细述。
需要说明的,带外控制器根据CXL扩展内存的故障信息进行故障分析的方法,可以参考相关技术中带外控制器根据计算机设备的主机内存的故障信息进行故障分析的方法,此处不再赘述。
上述实施例中,通过将CXL扩展内存的故障信息发送给带外控制器,从而实现使用当前主流的基于带外的故障分析技术对CXL扩展内存的故障信息进行故障分析,有助于提高CXL扩展内存的可靠可用可维护性。
S704:带外控制器将故障分析结果发送给CPU的处理器固件,故障分析结果用于CPU的处理器固件对CXL扩展内存进行故障修复。
在一些实施例中,若故障分析结果指示CXL扩展适用于行隔离、阵列(bank)隔离、比特(bit)隔离等故障修复方式进行修复,则由CPU中的处理器固件对CXL扩展内存进行故障修复。
在另一些实施例中,若故障分析结果指示CXL扩展适用于页隔离技术等故障修复方式,则CPU中的处理器固件将通过SMI中断将故障分析结果上报给OS层,由OS层在用户业务(即应用层正在执行的业务)不中断的情况下,实时响应SMI中断信息,对故障分析结果所指示的发生故障的内存页进行隔离,被隔离的内存页不能再被应用层使用,因此从,可以保证应用层数据运行在健康的内存地址空间中。
需要说明的,处理器固件根据故障分析结果对CXL扩展内存进行故障修复的方法,可以参考相关技术中处理器固件对计算机设备的主机内存进行故障修复的方法,此处不再赘述。
上述实施例中,带外控制器通过将故障分析结果发送给处理器固件,从而实现由处理器固件根据分析结果对CXL扩展内存进行故障修复,有助于提高CXL扩展内存的可靠可用可维护性。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,故障上报装置包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法,示例性的对故障上报装置进行功能模块的划分,例如,故障上报装置可以包括对应各个功能划分的各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
示例性的,图8示出了上述实施例中所涉及的故障上报装置(记为故障上报装置800)的一种可能的结构示意图,该故障上报装置800包括接收单元801和处理单元802。接收单元801,用于接收CPU中的操作系统OS管理单元发送的目标指令,目标指令为CPU中的OS管理单元响应于消息信号中断信息所生成的,目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号。例如,图3所示的S304,图4所示的S404,或图5中的S504。处理单元802,用于响应于目标指令,获取CXL扩展内存的故障信息。例如,图3所示的S305,图4所示的S405,或图5中的S505。
可选地,目标指令为系统管理中断指令。
可选地,目标指令为目标函数的调用指令,目标函数用于获取CXL扩展内存的故障信息。
可选地,计算机设备还包括带外控制器;处理单元802,还用于向带外控制器发送故障信息,故障信息用于带外控制器生成CXL扩展内存的故障分析结果。
可选地,处理单元802,还用于在故障信息指示CXL扩展内存的故障严重程度满足预设条件的情况下,向CPU中的OS管理单元发送故障信息,故障信息用于CPU中的OS管理单元生成CXL扩展内存的故障分析结果。
关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种故障上报装置800的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
示例性的,图9示出了上述实施例中所涉及的故障上报装置(记为故障上报装置900)的一种可能的结构示意图,该故障上报装置900可以包括处理单元901;处理单元901,用于接收消息信号中断信息,消息信号中断信息用于指示处理单元指示CPU中的操作系统OS管理单元指示CPU中的处理器固件获取CXL扩展内存的故障信息,消息信号中断信息为计算快速链路CXL扩展内存发生故障时所产生的信号。例如,图3所示的S302,图4所示的S402,或图5中的S502。处理单元901,还用于响应于消息信号中断信息,向CPU中的处理器固件发送目标指令,目标指令用于指示CPU中的处理器固件获取CXL扩展内存的故障信息。例如,图3所示的S303,图4所示的S403,或图5中S503-S504。
可选地,目标指令为系统管理中断指令。
可选地,目标指令为目标函数的调用指令,目标函数用于获取CXL扩展内存的故障信息。
可选地,故障上报装置900还包括分析单元902。分析单元902,用于接收CXL扩展内存的故障信息,故障信息指示CXL扩展内存的故障严重程度满足预设条件。分析单元902,还用于根据故障信息,生成CXL扩展内存的故障分析结果。
关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种故障上报装置900的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
示例性的,图10示出了上述实施例中所涉及的故障上报装置(记为故障上报装置100)的一种可能的结构示意图,该故障上报装置100可以包括接收单元110和分析单元120;接收单元110,用于接收CPU中的处理器固件发送的CXL扩展内存的故障信息。例如,图7所示的S702。分析单元120,用于根据故障信息,生成CXL扩展内存的故障分析结果。例如,图7所示的S703。
关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种故障上报装置100的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,处理器与存储器连接,存储器存储有计算机执行指令,处理器执行该计算机执行指令时实现上述实施例中的数据处理方法。需要说明的,本申请实施例对计算机设备的具体形式不作任何限制。例如,计算机设备具体可以是终端装置,也可以是网络设备。其中,终端装置可以被称为:终端、用户设备(user equipment,UE)、终端设备、接入终端、用户单元、用户站、移动站、远方站、远程终端、移动设备、用户终端、无线通信设备、用户代理或用户装置等。终端装置具体可以是手机、增强现实(augmented reality,AR)设备、虚拟现实(virtualreality,VR)设备、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等。网络设备具体可以是服务器等。其中,服务器可以是一个物理或逻辑服务器,也可以是有两个或两个以上分担不同职责的物理或逻辑服务器、相互协同来实现服务器的各项功能。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当该计算机程序在计算机上运行时,使得该计算机执行上文提供的任一种计算机设备所执行的方法。
关于上述提供的任一种计算机可读存储介质中相关内容的解释及有益效果的描述,均可以参考上述对应的实施例,此处不再赘述。
本申请实施例还提供了一种芯片。该芯片中集成了用于实现上述计算机设备的功能的控制电路和一个或者多个端口。可选的,该芯片支持的功能可以参考上文,此处不再赘述。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可通过程序来指令相关的硬件完成。所述的程序可以存储于一种计算机可读存储介质中。上述提到的存储介质可以是只读存储器,随机接入存储器等。上述处理单元或处理器可以是中央处理器,通用处理器、特定集成电路(application specific integrated circuit,ASIC)、微处理器(digital signal processor,DSP),现场可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。
本申请实施例还提供了一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得计算机执行上述实施例中的任意一种方法。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如SSD)等。
应注意,本申请实施例提供的上述用于存储计算机指令或者计算机程序的器件,例如但不限于,上述存储器、计算机可读存储介质和通信芯片等,均具有非易失性(non-transitory)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (12)

1.一种故障上报方法,其特征在于,用于计算机设备,所述计算机设备包括中央处理器CPU和计算快速链路CXL扩展内存,所述方法包括:
所述CPU中的处理器固件接收所述CPU中的操作系统OS管理单元发送的目标指令;所述目标指令为所述CPU中的OS管理单元响应于消息信号中断信息所生成的,所述目标指令用于指示所述CPU中的处理器固件获取所述CXL扩展内存的故障信息;所述消息信号中断信息为所述计算快速链路CXL扩展内存发生故障时所产生的信号;
所述CPU中的处理器固件响应于所述目标指令,获取CXL扩展内存的故障信息。
2.根据权利要求1所述方法,其特征在于,
所述目标指令为系统管理中断指令。
3.根据权利要求1所述的方法,其特征在于,
所述目标指令为目标函数的调用指令,所述目标函数用于获取所述CXL扩展内存的故障信息。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述计算机设备还包括带外控制器,所述方法还包括:
所述CPU中的处理器固件向所述带外控制器发送所述故障信息,所述故障信息用于所述带外控制器生成所述CXL扩展内存的故障分析结果。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
在所述故障信息指示所述CXL扩展内存的故障严重程度满足预设条件的情况下,所述CPU中的处理器固件向所述CPU中的OS管理单元发送所述故障信息,所述故障信息用于所述CPU中的OS管理单元生成所述CXL扩展内存的故障分析结果。
6.一种故障上报方法,其特征在于,用于计算机设备,所述计算机设备包括中央处理器CPU和计算快速链路CXL扩展内存,所述方法包括:
所述CPU中的操作系统OS管理单元接收消息信号中断信息,所述消息信号中断信息用于指示所述CPU中的操作系统OS管理单元指示所述CPU中的处理器固件获取CXL扩展内存的故障信息,所述消息信号中断信息为所述计算快速链路CXL扩展内存发生故障时所产生的信号;
所述CPU中的操作系统OS管理单元响应于所述消息信号中断信息,向所述CPU中的处理器固件发送目标指令,所述目标指令用于指示所述CPU中的处理器固件获取CXL扩展内存的故障信息。
7.根据权利要求6所述的方法,其特征在于,
所述目标指令为系统管理中断指令。
8.根据权利要求6所述的方法,其特征在于,
所述目标指令为目标函数的调用指令,所述目标函数用于获取所述CXL扩展内存的故障信息。
9.根据权利要求6-8中任一项所述的方法,其特征在于,所述方法还包括:
所述CPU中的操作系统OS管理单元接收所述CPU中的处理器固件发送的所述CXL扩展内存的故障信息,所述故障信息指示所述CXL扩展内存的故障严重程度满足预设条件;
所述CPU中的操作系统OS管理单元根据所述故障信息,生成所述CXL扩展内存的故障分析结果。
10.一种故障上报方法,其特征在于,用于计算机设备,所述计算机设备包括带外控制器和计算快速链路CXL扩展内存,所述方法包括:
所述带外控制器接收所述CPU中的处理器固件发送的所述CXL扩展内存的故障信息;
所述带外控制器根据所述故障信息,生成所述CXL扩展内存的故障分析结果。
11.一种计算机设备,其特征在于,包括:
中央处理器CPU,用于执行如权利要求1-5中任一项所述的方法,或如权利要求6-9中任一项所述的方法;
带外控制器,用于执行如权利要求10所述的方法。
12.一种计算机设备,其特征在于,包括:
处理器固件,用于执行如权利要求1-5中任一项所述的方法;
OS管理单元,用于执行如权利要求6-9中任一项所述的方法;
带外管理单元,用于执行如权利要求10所述的方法。
CN202211091558.6A 2022-09-07 2022-09-07 故障上报方法、设备及存储介质 Pending CN116302625A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211091558.6A CN116302625A (zh) 2022-09-07 2022-09-07 故障上报方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211091558.6A CN116302625A (zh) 2022-09-07 2022-09-07 故障上报方法、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116302625A true CN116302625A (zh) 2023-06-23

Family

ID=86800085

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211091558.6A Pending CN116302625A (zh) 2022-09-07 2022-09-07 故障上报方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116302625A (zh)

Similar Documents

Publication Publication Date Title
EP3893114B1 (en) Fault processing method, related device, and computer storage medium
US7565567B2 (en) Highly available computing platform
US8156376B2 (en) Method, device and system for storing data in cache in case of power failure
US8621337B1 (en) Detecting memory corruption
US20070260910A1 (en) Method and apparatus for propagating physical device link status to virtual devices
US9026865B2 (en) Software handling of hardware error handling in hypervisor-based systems
US9912474B2 (en) Performing telemetry, data gathering, and failure isolation using non-volatile memory
US7962782B2 (en) Modifying connection records
US20070165520A1 (en) Port trunking between switches
US9372702B2 (en) Non-disruptive code update of a single processor in a multi-processor computing system
US8166273B2 (en) Degeneration method and information processing apparatus
WO2012119369A1 (zh) 基于cc-numa的报文处理方法、装置和系统
US7831858B2 (en) Extended fault resilience for a platform
WO2022155919A1 (zh) 一种故障处理方法、装置及系统
CN114880266B (zh) 故障处理的方法、装置、计算机设备和存储介质
US20120311206A1 (en) Facilitating processing in a communications environment using stop signaling
CN116302625A (zh) 故障上报方法、设备及存储介质
WO2016101177A1 (zh) 计算机设备内存的检测方法和计算机设备
CN105868038A (zh) 内存错误处理方法及电子设备
TWI772024B (zh) 減少停機時間的方法及系統
CN115686901B (zh) 内存故障分析方法及计算机设备
CN116483612B (zh) 内存故障处理方法、装置、计算机设备和存储介质
US7584271B2 (en) Method, system, and computer readable medium for delaying the configuration of a shared resource
CN116483600A (zh) 内存故障处理方法及计算机设备
WO2023143039A1 (zh) 一种数据处理方法及装置

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20231121

Address after: 450046, 10th Floor, North Chuangzhi Tiandi Building, Shigeng Street, Longzihu Wisdom Island Middle Road East, Zhengdong New District, Zhengzhou City, Henan Province

Applicant after: Henan Kunlun Technology Co.,Ltd.

Address before: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province

Applicant before: Super fusion Digital Technology Co.,Ltd.