CN117389819B - 一种热插拔报错方法、处理器架构、设备以及存储介质 - Google Patents
一种热插拔报错方法、处理器架构、设备以及存储介质 Download PDFInfo
- Publication number
- CN117389819B CN117389819B CN202311704052.2A CN202311704052A CN117389819B CN 117389819 B CN117389819 B CN 117389819B CN 202311704052 A CN202311704052 A CN 202311704052A CN 117389819 B CN117389819 B CN 117389819B
- Authority
- CN
- China
- Prior art keywords
- error reporting
- hot plug
- bmc
- pcie
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 101
- 230000005540 biological transmission Effects 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000004590 computer program Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 14
- 230000004913 activation Effects 0.000 claims description 12
- 230000004048 modification Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 5
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 230000000007 visual effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- 230000009471 action Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000004888 barrier function Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection 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/221—Detection 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供了一种热插拔报错方法、处理器架构、设备以及存储介质,所述方法应用于ARM平台,ARM平台包括BMC、OS以及BIOS,BMC和OS之间基于BIOS配置的数据接口服务进行数据传输,在ARM平台工作的过程中,当BIOS中的SCP检测到任一接口对应的PCIE CE类报错信息后,SCP将PCIE CE类报错信息发送至BMC和OS;OS触发BMC采集设备数据;OS根据BMC采集到的设备数据、任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定任一接口对应的PCIE CE类报错信息是否为热插拔报错信息;当PCIE CE类报错信息为热插拔报错信息时,OS向BMC发送热插拔报错信息对应的屏蔽信息。本申请实施例旨在提高用户使用的体验感。
Description
技术领域
本申请实施例涉及数据处理的技术领域,具体而言,涉及一种热插拔报错方法、处理器架构、设备以及存储介质。
背景技术
当前ARM(Advanced RISC Machine,一种处理器架构)平台处理器固件主要分为两个部分SCP(system control processor,系统控制处理器)和UEFI(Unified ExtensibleFirmware Interface,统一可扩展固件接口),且主要硬件厂商对于RAS(Reliability,Availability and Serviceability,评价系统性能的指标)功能部分均会将其在SCP部分进行完成,因此受制于硬件部件厂商及ARM平台限制,RAS的主要功能实现较难进行定制化修改改动。
在ARM平台RAS功能中对于PCIE CE(peripheral component interconnectexpress Correctable errors,内存可修正错误)的处理机制相对匮乏,尤其是常见的热插拔功能没有单独进行区分设计,即ARM平台提供了PCIE CE的总控制管理方案,仅能对PCIECE这一个大类的报错进行总调控,PCIE CE不光包括热插拔类型报错,还包括其他类型的报错信息,因此目前的ARM平台受制于硬件部件的限制,导致如热插拔类型的报错难以进行屏蔽,进而误报热插拔报错等不必要的信息,在影响稳定使用和服务器整体评估的同时还大大降低了用户使用时的稳定性体验,造成不必要的保修和纠纷。
发明内容
本申请实施例提供一种热插拔报错方法、处理器架构、设备以及存储介质,旨在提高用户使用的体验感。
第一方面本申请实施例提供一种热插拔报错方法,应用于ARM平台,所述ARM平台包括BMC、OS以及BIOS,所述BMC和所述OS之间基于所述BIOS配置的数据接口服务进行数据传输,所述方法包括:
在ARM平台工作的过程中,当所述BIOS中的SCP检测到任一接口对应的PCIE CE类报错信息后,所述SCP将所述PCIE CE类报错信息发送至BMC和OS;
所述OS触发所述BMC采集设备数据;
所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息;
当所述PCIE CE类报错信息为热插拔报错信息时,所述OS向所述BMC发送所述热插拔报错信息对应的屏蔽信息。
可选地,当所述PCIE CE类报错信息为热插拔报错信息时,所述OS向所述BMC发送所述热插拔报错信息对应的屏蔽信息之后,所述方法还包括:
所述BMC响应于所述热插拔报错信息对应的屏蔽信息,将所述热插拔报错信息删除。
可选地,所述方法还包括:
所述BMC每隔预设间隔采集设备数据,并发送至所述OS。
可选地,所述热插拔报错参数包括热插拔报错间隔,所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息,包括:
对于任一接口对应的PCIE CE类报错信息,所述OS确定该PCIE CE类报错信息的第一次报错时间和最后一次报错时间之间的报错时长;
当所述报错时长小于所述热插拔报错间隔,且所述OS根据BMC采集到的设备数据确定该接口在所述报错时长内存在设备变动信息时,将该接口对应的PCIE CE类报错信息确定为热插拔报错信息,其中,所述设备变动信息包括增加设备或减少设备。
可选地,所述热插拔报错参数包括热插拔报错阈值,所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息,包括:
对于任一接口对应的PCIE CE类报错信息,所述OS统计该PCIE CE类报错信息在标定时间段内的报错次数;
若该PCIE CE类报错信息在标定时间段内的报错次数小于热插拔报错阈值,且所述OS根据BMC采集到的设备数据确定该接口在所述标定时间段存在设备变动信息时,将该接口对应的PCIE CE类报错信息确定为热插拔报错信息,其中,所述设备变动信息包括增加设备或减少设备。
可选地,所述方法还包括:
在ARM平台启动的过程中,通过所述ARM平台的BIOS在所述OS和所述BMC上注册数据接口服务,所述数据接口服务用于通过BIOS提供所述BMC和所述OS的数据传输接口。
可选地,在ARM平台启动的过程中,通过所述ARM平台的BIOS在所述OS和所述BMC上注册数据接口服务,包括:
所述ARM平台的服务器上电后,所述BIOS在所述BMC上注册数据接口服务;
进入OS后,运行所述OS内的第一热插拔报错管理程序,所述第一热插拔报错管理程序访问所述BIOS注册的所述数据接口服务;
所述OS通过所述数据接口服务提供的数据传输接口向所述BMC发送激活信息;
所述BMC响应于所述激活信息,启动所述BMC内存储的第二热插拔报错管理程序。
可选地,所述ARM平台的服务器上电后,所述方法还包括:
所述BIOS将自身当前存储的热插拔报错参数发送至所述BMC。
可选地,进入OS后,运行所述OS内的第一热插拔报错管理程序之后,所述方法还包括:
所述第一热插拔报错管理程序访问获取所述BIOS中当前存储的热插拔报错参数。
可选地,所述方法还包括:
所述ARM平台的服务器上电后,所述BMC检测自身是否存储有从所述BIOS中获取的热插拔报错参数;
所述BIOS将自身当前存储的热插拔报错参数发送至所述BMC,并注册数据接口服务,所述数据接口服务用于通过BIOS提供所述BMC和所述OS的数据传输接口;
进入OS后运行所述OS内的第一热插拔报错管理程序,所述第一热插拔报错管理程序访问所述BIOS注册的所述数据接口服务,并获取所述BIOS中当前存储的热插拔报错参数;
所述OS通过所述数据接口服务提供的数据传输接口向所述BMC发送激活信息;
所述BMC响应于所述激活信息,启动所述BMC内存储的第二热插拔报错管理程序。
可选地,进入OS之前,所述方法还包括:
所述BIOS实时监测所述热插拔报错参数的修改操作;
当存在所述热插拔报错参数的修改操作时,所述BIOS将修改后的热插拔报错参数分别发送至所述OS和所述BMC。
可选地,进入OS之前,所述方法还包括:
响应于对热插拔报错设置选项的关闭操作,所述BIOS将热插拔报关闭信息分别发送至所述OS和所述BMC;
所述OS响应于所述热插拔报关闭信息,停止执行第一热插拔报错管理程序;
所述BMC响应于所述热插拔报关闭信息,停止执行所述第二热插拔报错管理程序。
可选地,所述方法还包括:
在ARM平台工作的过程中,所述OS响应于对热插拔报错参数的更改操作,存储更改后的热插拔报错参数,并将所述更改后的热插拔报错参数分别发送至所述BIOS和所述BMC。
可选地,在下一次ARM平台启动的过程中,所述方法还包括:
在所述ARM平台的服务器上电后,所述BIOS将自身存储的所述更改后的热插拔报错参数分别发送至所述BMC和所述OS。
可选地,所述方法还包括:
响应于管理程序的升级操作,所述OS获取待升级的所述第一热插拔报错管理程序,将当前的第一热插拔报错管理程序升级为待升级的所述第一热插拔报错管理程序。
可选地,所述OS根据所述BMC采集到的设备数据、所述PCIE CE类报错信息的报错次数以及预设的热插拔报错参数,确定所述PCIE CE类报错信息是否为热插拔报错信息之后,所述方法还包括:
当所述PCIE CE类报错信息不是热插拔报错信息时,所述OS向所述BMC发送所述PCIE CE类报错信息对应的正常处理信息;
所述BMC响应于所述PCIE CE类报错信息对应的正常处理信息,对所述PCIE CE类报错信息进行记录与报错。
可选地,当所述PCIE CE类报错信息为热插拔报错信息时,所述方法还包括:
所述OS将所述PCIE CE类报错信息以及所述PCIE CE类报错信息的时间戳存储在热插拔汇总列表中,以便于汇总并查看所有的热插拔报错信息。
可选地,所述方法还包括:
所述OS响应于热插拔报错的查询操作,根据所述热插拔汇总列表生成可视化的热插拔报错图表进行显示。
第二方面,本申请实施例提供一种处理器架构,所述处理器架构包括BMC、OS以及BIOS,所述处理器架构用于执行实施例第一方面所述的热插拔报错方法。
第三方面,本申请实施例提供一种计算机设备,包括:至少一个处理器,以及存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时执行如实施例第一方面所述的热插拔报错方法。
第四方面,本申请实施例提供一种非易失性可读存储介质,所述非易失性可读存储介质存储有计算机程序,其中,所述计算机程序被处理器执行时执行如实施例第一方面所述的热插拔报错方法。
有益效果:
在ARM平台工作的过程中,当所述BIOS中的SCP检测到任一接口对应的PCIE CE类报错信息后,SCP将PCIE CE类报错信息发送至BMC和OS;所述OS触发BMC采集设备数据;OS根据BMC采集到的设备数据、任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定任一接口对应的PCIE CE类报错信息是否为热插拔报错信息;当所述PCIECE类报错信息为热插拔报错信息时,所述OS向所述BMC发送所述热插拔报错信息对应的屏蔽信息。
本方法提供的热插拔报错方法,不受制于设备厂商和ARM平台本身的架构限制,通过OS和BMC之间配置的进行数据传输的数据接口服务,打破了OS和BMC之间的数据传输壁垒,然后由OS确定PCIE CE类报错信息是否为热插拔报错信息,当PCIE CE类报错信息为热插拔报错信息时,OS向BMC发送热插拔报错信息对应的屏蔽信息,从而可以对热插拔报错信息进行屏蔽,不用向用户上报不必要的热插拔报错,可以显著提高用户使用的体验感。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1示出了本申请实施例提供的热插拔报错方法的步骤流程图;
图2示出了本申请实施例提供的ARM平台的结构拓扑图;
图3示出了本申请实施例提供的处理器架构的示意图;
图4示出了本申请实施例提供的计算机设备的示意图;
图5示出了本申请实施例提供的非易失性可读存储介质的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本申请的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
ARM:Advanced RISC Machine,一种处理器架构;
CPU:Central Processing Unit,中央处理器;
BMC:Baseboard Management Controller,基板管理控制器;
OS:Operating System,操作系统,服务器中常见OS为Linux系统;
BIOS:Basic Input Output System,基本输入输出系统,一般即指UEFI;
UEFI:Unified Extensible Firmware Interface,统一可扩展固件接口;
SCP:system control processor,系统控制处理器;
RAS:Reliability,Availability and Serviceability,评价系统性能的指标,包括可靠性、可用性以及可维护性三个指标,主要是指MCA(Machine Check Architecture)机制,即用来检测硬件错误的机制;
PCIE CE:peripheral component interconnect express Correctable errors,内存可修正错误。
热插拔指的是在不关闭系统电源的情况下,将模块、板卡插入或拔出系统而不影响系统的正常工作,从而提高了系统的可靠性、快速维修性、冗余性和对灾难的及时恢复能力。
目前的ARM平台针对热插拔报错仅提供了PCIE CE的总控制管理方案,即在目前ARM平台中PCIE CE报错不光包括热插拔类型报错,还包括其他类型的报错信息,无法对热插拔类型的报错进行单独管理,热插拔作为一种高性能的需求,其报错是一种没必要的信息,将热插拔报错归纳在PCIE CE类型的报错信息中,导致排查问题时需要有专业技术人员对其进行判断并排除掉热插拔的误报信息,并且误报错误会导致BMC下有相应的报错记录降低了机器使用稳定性,同时由于需要专业技术人员进行区分,不仅增加了维护难度,还增加了维护成本和生产成本。不仅会影响稳定使用和服务器整体评估,同时还大大降低了用户使用时的稳定性体验,造成不必要的保修和纠纷。
基于此,本申请实施例提供一种热插拔报错方法,可以对热插拔报错进行单独管理,减少不必要的报错,从而提高用户使用时的体验感。
参照图1,示出了本申请实施例提供的一种热插拔报错方法的步骤流程图,所述方法应用于ARM平台,所述ARM平台包括BMC、OS以及BIOS,且本实施例中BMC和OS之间基于BIOS配置的数据接口服务进行数据传输,打破了OS和BMC之间的数据传输壁垒,所述方法具体可以包括以下步骤:
S101:在ARM平台工作的过程中,当所述BIOS中的SCP检测到任一接口对应的PCIECE类报错信息后,所述SCP将所述PCIE CE类报错信息发送至BMC和OS。
在ARM平台中,BMC包括基于独立硬件在服务器上电起始即运行的软件,只要服务器插上电源线,BMC软件便可以快速运行,OS和BIOS是基于ARM平台的CPU执行的程序,且BIOS可以划分为SCP和UEFI,其中,SCP为基于CPU内单独的小核运行的程序,SCP用于监测PCIE CE类报错信息,具体地,当设备如硬盘设备触发移除时,服务器的终端节点(endpoiont端)会将PCIE CE类报错信息上报到根节点端(root poiont端),SCP管控rootpoint端并具有PCIE CE类报错信息的过滤功能,上报PCIE CE类报错信息时,SCP对CPU内的寄存器进行置位,BMC通过读取寄存器状态即可获得PCIE CE类报错信息,同时,CPU可以通过ACPI接口(Advanced Configuration and Power Management Interface,高级配置和电源管理接口)向OS发送PCIE CE类报错信息,并且每个PCIE CE类报错信息都携带有对应的报错的接口信息,即可以获知上报PCIE CE类报错信息的接口。
本实施例在ARM平台工作的过程中,当SCP检测到任一接口对应的PCIE CE类报错信息时,PCIE CE类报错信息有可能是热插拔报错信息,因此对PCIE CE类报错信息进行进一步地判断,但是由于SCP是ARM平台的底层固件,CPU厂商提供了SCP固定的管控策略,难以修改,因此为了从PCIE CE类报错信息中单独分离热插拔报错信息,本实施例中,将SCP检测到的PCIE CE类报错信息同时发送至BMC和OS。
S102:所述OS触发所述BMC采集设备数据。
本实施例基于的ARM平台中,OS可以和BMC之间进行数据传输,打破了两者间的数据传输的壁垒。
在一种可行的实施方式中,可以在ARM平台启动的过程中,通过所述ARM平台的BIOS在所述OS和所述BMC上注册数据接口服务,数据接口服务用于通过所述BIOS提供所述BMC和所述OS的数据传输接口。
具体地,可以预先在OS内配置第一热插拔报错管理程序,在BMC中配置第二热插拔报错管理程序,并在BIOS中预先配置有热插拔报错设置选项,通过热插拔报错设置选项可以由用户自主选择是否需要执行屏蔽热插拔报错的过程,并允许用户定义热插拔报错参数。
在ARM平台的服务器上电后,BIOS在BMC上注册数据接口服务,并且BIOS将自身当前存储的热插拔报错参数发送至BMC。
进入OS后,运行所述OS内的第一热插拔报错管理程序,第一热插拔报错管理程序访问所述BIOS注册的数据接口服务,并访问获取BIOS中当前存储的热插拔报错参数;OS通过所述数据接口服务提供的数据传输接口向所述BMC发送激活信息;BMC响应于所述激活信息,启动所述BMC内存储的第二热插拔报错管理程序,此时BMC和OS之间已经可以进行数据传输。
进而当所述OS接收到SCP发送的PCIE CE类报错信息后,触发BMC采集设备数据,BMC被触发后开始采集设备数据外,在其他实施方式中,BMC还可以每隔预设间隔采集设备数据,并发送至OS。
由于BMC有独立于BIOS的数据采集通道,有硬件上的特殊支持,示例地,BMC可以通过I2C总线(Inter-Integrated Circuit)直接访问服务器上PCIE设备的信息,如读取硬盘的信息等,从而可以获取到设备实际的在线情况,然后将采集到的设备数据打包后,通过BIOS注册的数据接口服务将设备数据传递给OS。
S103:所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息。
热插拔报信息错除了在拔掉设备时会作为PCIE CE类报错信息上报,在插接设备时也会由于安装抖动等接触问题作为PCIE CE类报错信息上报,但是热插拔报错在设备插拔动作结束后就不会在进行报错,因此可以设置热插拔报错参数,结合BMC采集到的设备数据判断任一接口对应的PCIE CE类报错信息是否为热插拔报错信息,热插拔报错参数可以是热插拔报错间隔或热插拔报错阈值,其中,热插拔报错间隔指的是任一接口的PCIE CE类报错信息的不同报错时间之间的时间间隔,热插拔报错阈值指的是任一接口的PCIE CE类报错信息的报错次数的阈值。
在一种可行的实施方式中,可以基于热插拔报错间隔判断PCIE CE类报错信息是否为热插拔报错信息。
具体地,对于任一接口对应的PCIE CE类报错信息,所述OS确定该PCIE CE类报错信息的第一次报错时间和最后一次报错时间之间的报错时长;当所述报错时长小于所述热插拔报错间隔,且所述OS根据BMC采集到的设备数据确定该接口在所述报错时长内存在设备变动信息时,将该接口对应的PCIE CE类报错信息确定为热插拔报错信息。
在对任一设备进行热插拔操作时,热插拔的动作是在短时间内完成的,如一个热插拔的动作在1秒内即可完成,在1秒内进行热插拔操作的接口会上报PCIE CE类报错信息,但如果OS确定任一接口的PCIE CE类报错信息在1秒后仍在持续上报,则表征该PCIE CE类报错信息不是由热插拔动作引起的,可能是由于设备与接口的接触不良等原因造成的PCIECE类报错信息持续上报。
并且热插拔动作必将使得改接口增加设备或减少设备,因此在判断PCIE CE类报错信息是否为热插拔报错信息时,还需要基于BMC采集的设备数据分析接口在所述报错时长内是否存在设备变动信息,设备变动信息包括增加设备或减少设备,因为可能出现设备仍然连接在接口,但是设备与接口之间的PCIE电路断开了,这种情况也不属于热插拔操作导致的报错,因此还需要由BMC通过I2C总线来获取设备变动信息,排除设备仍连接但PCIE电路断开的情况。
本实施方式中的热插拔报错间隔可以根据实际应用的需求进行自定义设置,本实施例不做限制。
在另一种可行的实施方式中,还可以基于热插拔报错阈值判断PCIE CE类报错信息是否为热插拔报错信息。
具体地,对于任一接口对应的PCIE CE类报错信息,所述OS统计该PCIE CE类报错信息在标定时间段内的报错次数;若该PCIE CE类报错信息在标定时间段内的报错次数小于热插拔报错阈值,且所述OS根据BMC采集到的设备数据确定该接口在所述标定时间段存在设备变动信息时,即增加设备或减少设备时,将该接口对应的PCIE CE类报错信息确定为热插拔报错信息。
由于报错的频率一般在出厂时就是固定的,因此可以统计PCIE CE类报错信息在标定时间段内的报错次数,判断在标定时间段内的报错次数是否小于热插拔报错阈值,示例地,热插拔报错阈值可以设置为5,如果在1秒内,任一接口对应的PCIE CE类报错信息的报错次数小于5,则表征在1秒由于热插拔操作完成而不再报错,如果报错次数大于等于5,则表征不是由于热插拔操作引起的报错,即PCIE CE类报错信息不是热插拔报错信息。
本实施方式中的热插拔报错阈值和标定时间段的大小可以根据实际应用的需求进行自定义设置,本实施例不做限制。
S104:当所述PCIE CE类报错信息为热插拔报错信息时,所述OS向所述BMC发送所述热插拔报错信息对应的屏蔽信息。
BMC响应于所述热插拔报错信息对应的屏蔽信息后,可以将对应的接口的热插拔报错信息删除。
如果PCIE CE类报错信息不是热插拔报错信息时,OS可以放行进行正常的PCIE CE类报错信息的上报。
在一种可行的实施方式中,当PCIE CE类报错信息不是热插拔报错信息时,OS还可以向所述BMC发送所述PCIE CE类报错信息对应的正常处理信息;所述BMC响应于所述PCIECE类报错信息对应的正常处理信息,对所述PCIE CE类报错信息进行记录与报错。
虽然对热插拔报错信息不再上报,但是OS可以将所述PCIE CE类报错信息以及所述PCIE CE类报错信息的时间戳存储在热插拔汇总列表中,以便于汇总并查看所有的热插拔报错信息,当维护人员想要查看热插拔报错信息时,可以在OS上进行查询操作,OS响应于热插拔报错的查询操作,根据所述热插拔汇总列表生成可视化的热插拔报错图表进行显示。
本实施例基于ARM平台的BIOS、BMC以及OS各自的部分功能将其整体进行结合,从而实现单一部分难以完成的功能,即实现了ARM平台下无法单独对热插拔类型的报错进行单独管理的功能。
参照图2,示出了本申请实施例提供的ARM平台的结构拓扑图,BIOS的UEFI部分虽然无法直接管控PCIE CE类型的报错,但是作为主要用户交互部分,可以通过UEFI在BIOS中预先配置有热插拔报错设置选项和热插拔报错参数,便于用户通过常见的操作形式对热插拔报错的判断过程进行管理操作,并且BIOS会将热插拔报错设置选项和热插拔报错参数分别发送至BMC和OS;BIOS中SCP用于获取PCIE CE类报错信息并发送至BMC和OS,而OS和BMC基于BIOS的数据接口服务可以进行数据交互。
OS作为最主要的用户交互渠道,是用户在正常业务使用中最易交互的系统,因此利用其该特性将流程的主要交互部分放在了OS端,通过将BIOS提供的热插拔报错设置选项和热插拔报错参数以及BMC采集的设备数据汇总至OS,由OS判断PCIE CE类报错信息是否为热插拔类的报错信息,然后将判断结果通过数据接口服务反馈给BMC,告知BMC端该PCIE CE类报错信息为热插拔类的报错信息,而非通常的PCIE CE的报错,由BMC删除热插拔类的报错信息,避免在BMC下的错误信息误报;同时OS可以将热插拔类的报错信息进行汇总,方便用户查看当前进行的热插拔时的报错信息,以及方便工程师调试时进行信息确认。
并且,由于主要的热插拔报错信息的判断位于OS端,因此基于OS易于更新的特点,还可以及时对OS上的第一热插拔报错管理程序进行更新升级,进而不必依赖于固件的更新,具体地,响应于管理程序的升级操作,所述OS获取待升级的所述第一热插拔报错管理程序,将当前的第一热插拔报错管理程序升级为待升级的所述第一热插拔报错管理程序。
同时,OS端作为最主要的用户交互渠道,还可以直接通过OS来更新或调整热插拔报错参数,然后同步给BIOS和BMC,示例地,在ARM平台工作的过程中,所述OS响应于对热插拔报错参数的更改操作,存储更改后的热插拔报错参数,并将所述更改后的热插拔报错参数分别发送至所述BIOS和所述BMC,在OS更新或调整的热插拔报错参数同步至BIOS后,在下一次ARM平台启动的过程中,当ARM平台的服务器上电后,BIOS向BMC和OS发送的仍然是用户通过OS更改后的热插拔报错参数,从而使得在用户可以在BIOS和OS上都可以配置热插拔报错参数。
在一种可行的实施方式中,ARM平台的服务器上电后,BMC检测自身是否存储有从所述BIOS中获取的热插拔报错参数,并等待BIOS的数据接口服务的注册;然后BIOS将自身当前存储的热插拔报错参数发送至所述BMC,并注册数据接口服务,BIOS实时监测所述热插拔报错参数的修改操作;当存在所述热插拔报错参数的修改操作时,所述BIOS将修改后的热插拔报错参数分别发送至所述BMC。
进入OS后,运行所述OS内的第一热插拔报错管理程序,所述第一热插拔报错管理程序访问所述BIOS注册的所述数据接口服务,并获取所述BIOS中修改后的热插拔报错参数。
所述OS通过所述数据接口服务提供的数据传输接口向所述BMC发送激活信息;所述BMC响应于所述激活信息,启动所述BMC内存储的第二热插拔报错管理程序。
在一种可行的实施方式中,进入OS之前,响应于对热插拔报错设置选项的关闭操作,所述BIOS将热插拔报关闭信息分别发送至所述OS和所述BMC;所述OS响应于所述热插拔报关闭信息,停止执行第一热插拔报错管理程序;所述BMC响应于所述热插拔报关闭信息,停止执行所述第二热插拔报错管理程序,从而可以停止热插拔报错信息的判断过程。
本实施例提供的热插拔报错方法,通过OS和BMC之间配置的进行数据传输的数据接口服务,打破了OS和BMC之间的数据传输壁垒,然后由OS确定PCIE CE类报错信息是否为热插拔报错信息,当PCIE CE类报错信息为热插拔报错信息时,OS向BMC发送热插拔报错信息对应的屏蔽信息,从而可以对热插拔报错信息进行屏蔽,不用向用户上报不必要的热插拔报错,可以显著提高用户使用的体验感,并且具有可拓展性强、移植性强、操作性强等优点,可以适用于不同的硬件类型平台中,而不仅限于对热插拔报错信息进行单独的管理,还可以应用于其他类型的报错信息的管理过程中。
参照图3,示出了本申请实施例提供的一种处理器架构的示意图,所述处理器架构包括BMC、OS以及BIOS,所述处理器架构用于执行实施例所述的热插拔报错方法。
参照图4,示出了本申请实施例提供的一种计算机设备的示意图,一种计算机设备400包括:至少一个处理器401,以及存储器402,所述存储器402存储有可在所述处理器401上运行的计算机程序403,其中,所述处理器401执行所述计算机程序403时执行如实施例所述的热插拔报错方法。
参照图5,示出了本申请实施例提供的一种非易失性可读存储介质的示意图,所述非易失性可读存储介质500存储有计算机程序501,其中,所述计算机程序501被处理器执行时执行实施例所述的热插拔报错方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (21)
1.一种热插拔报错方法,其特征在于,应用于ARM平台,所述ARM平台包括BMC、OS以及BIOS,所述BMC和所述OS之间基于所述BIOS配置的数据接口服务进行数据传输,所述方法包括:
在ARM平台工作的过程中,当所述BIOS中的SCP检测到任一接口对应的PCIE CE类报错信息后,所述SCP将所述PCIE CE类报错信息发送至BMC和OS;
所述OS触发所述BMC采集设备数据;
所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息;
当所述PCIE CE类报错信息为热插拔报错信息时,所述OS向所述BMC发送所述热插拔报错信息对应的屏蔽信息。
2.根据权利要求1所述的方法,其特征在于,当所述PCIE CE类报错信息为热插拔报错信息时,所述OS向所述BMC发送所述热插拔报错信息对应的屏蔽信息之后,所述方法还包括:
所述BMC响应于所述热插拔报错信息对应的屏蔽信息,将所述热插拔报错信息删除。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述BMC每隔预设间隔采集设备数据,并发送至所述OS。
4.根据权利要求1所述的方法,其特征在于,所述热插拔报错参数包括热插拔报错间隔,所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息,包括:
对于任一接口对应的PCIE CE类报错信息,所述OS确定该PCIE CE类报错信息的第一次报错时间和最后一次报错时间之间的报错时长;
当所述报错时长小于所述热插拔报错间隔,且所述OS根据BMC采集到的设备数据确定该接口在所述报错时长内存在设备变动信息时,将该接口对应的PCIE CE类报错信息确定为热插拔报错信息,其中,所述设备变动信息包括增加设备或减少设备。
5.根据权利要求1所述的方法,其特征在于,所述热插拔报错参数包括热插拔报错阈值,所述OS根据所述BMC采集到的设备数据、所述任一接口对应的PCIE CE类报错信息的报错情况以及预设的热插拔报错参数,确定所述任一接口对应的PCIE CE类报错信息是否为热插拔报错信息,包括:
对于任一接口对应的PCIE CE类报错信息,所述OS统计该PCIE CE类报错信息在标定时间段内的报错次数;
若该PCIE CE类报错信息在标定时间段内的报错次数小于热插拔报错阈值,且所述OS根据BMC采集到的设备数据确定该接口在所述标定时间段存在设备变动信息时,将该接口对应的PCIE CE类报错信息确定为热插拔报错信息,其中,所述设备变动信息包括增加设备或减少设备。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在ARM平台启动的过程中,通过所述ARM平台的BIOS在所述OS和所述BMC上注册数据接口服务,所述数据接口服务用于通过BIOS提供所述BMC和所述OS的数据传输接口。
7.根据权利要求6所述的方法,其特征在于,在ARM平台启动的过程中,通过所述ARM平台的BIOS在所述OS和所述BMC上注册数据接口服务,包括:
所述ARM平台的服务器上电后,所述BIOS在所述BMC上注册数据接口服务;
进入OS后,运行所述OS内的第一热插拔报错管理程序,所述第一热插拔报错管理程序访问所述BIOS注册的所述数据接口服务;
所述OS通过所述数据接口服务提供的数据传输接口向所述BMC发送激活信息;
所述BMC响应于所述激活信息,启动所述BMC内存储的第二热插拔报错管理程序。
8.根据权利要求7所述的方法,其特征在于,所述ARM平台的服务器上电后,所述方法还包括:
所述BIOS将自身当前存储的热插拔报错参数发送至所述BMC。
9.根据权利要求7所述的方法,其特征在于,进入OS后,运行所述OS内的第一热插拔报错管理程序之后,所述方法还包括:
所述第一热插拔报错管理程序访问获取所述BIOS中当前存储的热插拔报错参数。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述ARM平台的服务器上电后,所述BMC检测自身是否存储有从所述BIOS中获取的热插拔报错参数;
所述BIOS将自身当前存储的热插拔报错参数发送至所述BMC,并注册数据接口服务,所述数据接口服务用于通过BIOS提供所述BMC和所述OS的数据传输接口;
进入OS后运行所述OS内的第一热插拔报错管理程序,所述第一热插拔报错管理程序访问所述BIOS注册的所述数据接口服务,并获取所述BIOS中当前存储的热插拔报错参数;
所述OS通过所述数据接口服务提供的数据传输接口向所述BMC发送激活信息;
所述BMC响应于所述激活信息,启动所述BMC内存储的第二热插拔报错管理程序。
11.根据权利要求10所述的方法,其特征在于,进入OS之前,所述方法还包括:
所述BIOS实时监测所述热插拔报错参数的修改操作;
当存在所述热插拔报错参数的修改操作时,所述BIOS将修改后的热插拔报错参数分别发送至所述OS和所述BMC。
12.根据权利要求7-11任一所述的方法,其特征在于,进入OS之前,所述方法还包括:
响应于对热插拔报错设置选项的关闭操作,所述BIOS将热插拔报关闭信息分别发送至所述OS和所述BMC;
所述OS响应于所述热插拔报关闭信息,停止执行第一热插拔报错管理程序;
所述BMC响应于所述热插拔报关闭信息,停止执行所述第二热插拔报错管理程序。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在ARM平台工作的过程中,所述OS响应于对热插拔报错参数的更改操作,存储更改后的热插拔报错参数,并将所述更改后的热插拔报错参数分别发送至所述BIOS和所述BMC。
14.根据权利要求13所述的方法,其特征在于,在下一次ARM平台启动的过程中,所述方法还包括:
在所述ARM平台的服务器上电后,所述BIOS将自身存储的所述更改后的热插拔报错参数分别发送至所述BMC和所述OS。
15.根据权利要求12所述的方法,其特征在于,所述方法还包括:
响应于管理程序的升级操作,所述OS获取待升级的所述第一热插拔报错管理程序,将当前的第一热插拔报错管理程序升级为待升级的所述第一热插拔报错管理程序。
16.根据权利要求1所述的方法,其特征在于,所述OS根据所述BMC采集到的设备数据、所述PCIE CE类报错信息的报错次数以及预设的热插拔报错参数,确定所述PCIE CE类报错信息是否为热插拔报错信息之后,所述方法还包括:
当所述PCIE CE类报错信息不是热插拔报错信息时,所述OS向所述BMC发送所述PCIECE类报错信息对应的正常处理信息;
所述BMC响应于所述PCIE CE类报错信息对应的正常处理信息,对所述PCIE CE类报错信息进行记录与报错。
17.根据权利要求1所述的方法,其特征在于,当所述PCIE CE类报错信息为热插拔报错信息时,所述方法还包括:
所述OS将所述PCIE CE类报错信息以及所述PCIE CE类报错信息的时间戳存储在热插拔汇总列表中,以便于汇总并查看所有的热插拔报错信息。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
所述OS响应于热插拔报错的查询操作,根据所述热插拔汇总列表生成可视化的热插拔报错图表进行显示。
19.一种处理器架构,其特征在于,所述处理器架构包括BMC、OS以及BIOS,所述处理器架构用于执行权利要求1-18任意一项所述的热插拔报错方法。
20.一种计算机设备,其特征在于,包括:至少一个处理器,以及存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时执行如权利要求1-18任意一项所述的热插拔报错方法。
21.一种非易失性可读存储介质,其特征在于,所述非易失性可读存储介质存储有计算机程序,其中,所述计算机程序被处理器执行时执行如权利要求1-18任意一项所述的热插拔报错方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311704052.2A CN117389819B (zh) | 2023-12-12 | 2023-12-12 | 一种热插拔报错方法、处理器架构、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311704052.2A CN117389819B (zh) | 2023-12-12 | 2023-12-12 | 一种热插拔报错方法、处理器架构、设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117389819A CN117389819A (zh) | 2024-01-12 |
CN117389819B true CN117389819B (zh) | 2024-03-01 |
Family
ID=89468882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311704052.2A Active CN117389819B (zh) | 2023-12-12 | 2023-12-12 | 一种热插拔报错方法、处理器架构、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117389819B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109885521A (zh) * | 2019-02-28 | 2019-06-14 | 苏州浪潮智能科技有限公司 | 一种中断处理方法、系统及电子设备和存储介质 |
CN113342592A (zh) * | 2020-03-03 | 2021-09-03 | 合肥杰发科技有限公司 | 热插拔设备的断开检测方法、装置及介质 |
CN114201360A (zh) * | 2021-11-26 | 2022-03-18 | 苏州浪潮智能科技有限公司 | 一种aer功能管理方法、装置、服务器和存储介质 |
CN115237656A (zh) * | 2022-08-12 | 2022-10-25 | 苏州浪潮智能科技有限公司 | 一种服务器的报错处理方法、装置、设备及存储介质 |
-
2023
- 2023-12-12 CN CN202311704052.2A patent/CN117389819B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109885521A (zh) * | 2019-02-28 | 2019-06-14 | 苏州浪潮智能科技有限公司 | 一种中断处理方法、系统及电子设备和存储介质 |
CN113342592A (zh) * | 2020-03-03 | 2021-09-03 | 合肥杰发科技有限公司 | 热插拔设备的断开检测方法、装置及介质 |
CN114201360A (zh) * | 2021-11-26 | 2022-03-18 | 苏州浪潮智能科技有限公司 | 一种aer功能管理方法、装置、服务器和存储介质 |
CN115237656A (zh) * | 2022-08-12 | 2022-10-25 | 苏州浪潮智能科技有限公司 | 一种服务器的报错处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117389819A (zh) | 2024-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9954727B2 (en) | Automatic debug information collection | |
US10049010B2 (en) | Method, computer, and apparatus for migrating memory data | |
AU2014399227B2 (en) | Fault Processing Method, Related Apparatus and Computer | |
WO2022198972A1 (zh) | 一种服务器启动过程中的故障定位方法、系统及装置 | |
US10282267B2 (en) | Monitor peripheral device based on imported data | |
CN111488233A (zh) | 一种处理PCIe设备掉带宽问题的方法及系统 | |
WO2018095107A1 (zh) | 一种bios程序的异常处理方法及装置 | |
CN103748569A (zh) | Usb设备的无驱动操作的系统和方法 | |
TW201500935A (zh) | 機櫃伺服器基板管理控制器開關機控制系統及方法 | |
CN107807630B (zh) | 一种主备设备的切换控制方法、其切换控制系统及装置 | |
US10496128B2 (en) | Method for obtaining timestamp and computer device using the same | |
CN113064745B (zh) | 一种错误信息上报的方法、装置及介质 | |
CN117389819B (zh) | 一种热插拔报错方法、处理器架构、设备以及存储介质 | |
WO2017072904A1 (ja) | 計算機システム、及び、障害検知方法 | |
CN105893196A (zh) | 一种服务器调试辅助工具及系统 | |
TWI808362B (zh) | 可自我監視及恢復作業系統運作的電腦系統及方法 | |
CN115098342A (zh) | 系统日志收集方法、系统、终端及存储介质 | |
CN111610995B (zh) | 一种设备固件升级方法、装置、电子设备和存储介质 | |
CN109614279B (zh) | 一种工控机自检系统及其控制方法和相关设备 | |
CN116302844B (zh) | 硬盘信息的采集方法、装置、计算机设备及存储介质 | |
CN118132489B (zh) | 一种热拔插设备的设备信息更新方法、系统、设备及介质 | |
TWI715005B (zh) | 用於監控基板管理控制器之常駐程序的方法 | |
CN114816887B (zh) | 校验服务器硬盘背板拓扑设置的方法、系统、设备及介质 | |
CN114356708A (zh) | 一种设备故障监控方法、装置、设备及可读存储介质 | |
CN115981934A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |