WO2022228499A1 - 一种PCIe故障自修复方法、装置、设备及可读存储介质 - Google Patents
一种PCIe故障自修复方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- WO2022228499A1 WO2022228499A1 PCT/CN2022/089743 CN2022089743W WO2022228499A1 WO 2022228499 A1 WO2022228499 A1 WO 2022228499A1 CN 2022089743 W CN2022089743 W CN 2022089743W WO 2022228499 A1 WO2022228499 A1 WO 2022228499A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- error
- pcie
- error reporting
- parameter
- uce
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012545 processing Methods 0.000 claims description 19
- 238000012544 monitoring process Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 10
- 230000008439 repair process Effects 0.000 claims description 7
- 238000012423 maintenance Methods 0.000 abstract description 11
- 230000002411 adverse Effects 0.000 abstract description 3
- 230000000694 effects Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/076—Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/0745—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
Definitions
- PCIe peripheral component interconnect express, a high-speed serial computer expansion bus standard
- the performance, calculation, and function of the server are all related to the PCIe device, and the PCIe device also involves the computing of the server.
- the PCIe device also involves the computing of the server.
- the error reporting device is connected to the system as a normal device.
- the receiver error count recorded in the CE register is counted as the CE error reporting number of times
- the receiver error count recorded in the UCE register is counted as the UCE error reporting number of times.
- the parameter to be called corresponding to the error reporting device in the read pre-stored PCIe tuning parameters, as the target parameter includes:
- a PCIe fault self-healing device comprising:
- a fault removal unit configured to locate the error reporting device and remove the error reporting device if the number of times of CE error reporting reaches a corresponding error reporting threshold, or, if the number of times of said UCE reporting errors reaches a corresponding error reporting threshold;
- the data reading subunit is used to read the PCIe tuning parameters stored in the BMC EEPROM;
- BIOS service the PCIe error register to see if there are UCE and a large number of CE errors in a short period of time. If so, continue tuning. If no error is reported, the device will run stably and then notify The cluster runs the system, and the device is connected to the system as a normal device; if there are still multiple UCE errors or a large number of CE errors in a short period of time, the tuning parameters of the second priority are called, and the SI parameters of the error-reporting device are tuned again. , this method can ensure the stability of the operation of the equipment connected to the system, thereby ensuring the stability of the system operation.
- the device includes the following modules:
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种PCIe故障自修复方法,该方法在***中PCIe链路运行时,通过获取PCIe链路中的CE报错次数和UCE报错次数实现对于***运行状态监控,若CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值时,从***中移除报错设备,以避免报错设备对于***运行持续带来的不利影响,并根据预先存储的服务器中所有PCIe设备的可调优参数修改报错设备的SI参数寄存器,自动优化报错设备SI参数,实现PCIe故障修复后重新接入***,实现故障自修复,从而减少运维人员和服务器客服人员参与更换设备所带来的实现成本。本申请还公开了一种PCIe故障自修复装置、设备及可读存储介质,具有相应的技术效果。
Description
本申请要求在2021年04月29日提交中国专利局、申请号为202110474250.9、发明名称为“一种PCIe故障自修复方法、装置、设备及可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及设备运维技术领域,特别是涉及一种PCIe故障自修复方法、装置、设备及可读存储介质。
PCIe(peripheral component interconnect express,一种高速串行计算机扩展总线标准)设备在服务器中是必不可少的组成部分,服务器的性能,计算,功能等都与PCIe设备有关,PCIe设备还涉及服务器的计算(如GPU,FPGA),存储(如SAS HBA,NVME SSD),网络(NIC)等,起着重要的作用。
在使用过程中,随着设备的长时间运行及设备的老化,以及复杂PCIe链路中多设备的共同影响,可能会出现PCIe报错。目前***运行后,服务器***会有自动报错机制,***中出现PCIe报错时,一些小问题可以自动修复,但是大部分问题***无法自动修复,会导致***运行受阻,甚至会导致机器宕机或者重启,导致设备无法正常运行;而且,PCIe报错大部分是由运维人员人工进行故障判断以及故障排查的,导致运维人员人力的消耗及设备更换带来的成本增加。
综上所述,如何降低PCIe报错对***运行的影响,同时降低PCIe运维成本,是目前本领域技术人员急需解决的技术问题。
发明内容
本申请的目的是提供一种PCIe故障自修复方法、装置、设备及可读存储介质,可以降低PCIe报错对***运行的影响,同时降低PCIe运维成本。
为解决上述技术问题,本申请提供如下技术方案:
一种PCIe故障自修复方法,包括:
当PCIe链路根据默认SI参数进行数据处理时,获取所述PCIe链路中的CE报错次数和UCE报错次数;其中,所述默认SI参数为***启动后自动训练生成的SI参数;
判断所述CE报错次数和所述UCE报错次数是否达到对应的报错阈值;
若所述CE报错次数达到对应的报错阈值,或,所述UCE报错次数达到对应的报错阈值,则定位报错设备,并移除所述报错设备;
读取预先存储的PCIe调优参数中所述报错设备对应的待调用参数,作为目标参数;
将所述报错设备的默认SI参数替换为所述目标参数;
将所述报错设备作为正常设备接入***。
可选地,所述当PCIe链路根据默认SI参数进行数据处理时,获取所述PCIe链路中的CE报错次数和UCE报错次数,包括:
当PCIe链路根据默认SI参数进行数据处理时,轮询PCIE设备的CE寄存器和UCE寄存器;
将所述CE寄存器中记录的receiver error count计数作为所述CE报错次数,将所述UCE寄存器中记录的receiver error count计数作为所述UCE报错次数。
可选地,所述读取预先存储的PCIe调优参数中所述报错设备对应的待调用参数,作为目标参数,包括:
读取BMC EEPROM中存放的PCIe调优参数;
根据所述报错设备的B/D/F number确定对应的SI参数存放位置,作为目标位置;
确定所述目标位置下优先级最高的调优参数,作为待调用参数;
读取所述待调用参数。
可选地,在所述将所述报错设备作为正常设备接入***之前,还包括:
将所述报错设备作为可疑设备接入***;
执行所述获取所述PCIe链路中的CE报错次数和UCE报错次数的步骤;直至所述CE报错次数未达到对应的报错阈值,且,所述UCE报错次数未达 到对应的报错阈值时,执行所述将所述报错设备作为正常设备接入***的步骤。
一种PCIe故障自修复装置,包括:
运行监控单元,用于当PCIe链路根据默认SI参数进行数据处理时,获取所述PCIe链路中的CE报错次数和UCE报错次数;其中,所述默认SI参数为***启动后自动训练生成的SI参数;
运行判断单元,用于判断所述CE报错次数和所述UCE报错次数是否达到对应的报错阈值;
故障移除单元,用于若所述CE报错次数达到对应的报错阈值,或,所述UCE报错次数达到对应的报错阈值,则定位报错设备,并移除所述报错设备;
参数读取单元,用于读取预先存储的PCIe调优参数中所述报错设备对应的待调用参数,作为目标参数;
故障修复单元,用于将所述报错设备的默认SI参数替换为所述目标参数;
设备接入单元,用于将所述报错设备作为正常设备接入***。
可选地,所述运行监控单元包括:
寄存器轮询子单元,用于当PCIe链路根据默认SI参数进行数据处理时,轮询PCIE设备的CE寄存器和UCE寄存器;
数据读取子单元,用于将所述CE寄存器中记录的receiver error count计数作为所述CE报错次数,将所述UCE寄存器中记录的receiver error count计数作为所述UCE报错次数。
可选地,所述参数读取单元包括:
数据读取子单元,用于读取BMC EEPROM中存放的PCIe调优参数;
数据定位子单元,用于根据所述报错设备的B/D/F number确定对应的SI参数存放位置,作为目标位置;
目标确定子单元,用于确定所述目标位置下优先级最高的调优参数,作为待调用参数;
目标读取子单元,用于读取所述待调用参数。
可选地,所述PCIe故障自修复装置还包括:可疑监控单元,所述可疑监控单元用于将所述报错设备作为可疑设备接入***;触发所述运行监控单元执 行所述获取所述PCIe链路中的CE报错次数和UCE报错次数的步骤;直至所述CE报错次数未达到对应的报错阈值,且,所述UCE报错次数未达到对应的报错阈值时,触发所述设备接入单元执行所述将所述报错设备作为正常设备接入***的步骤。
一种PCIe故障自修复设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述PCIe故障自修复方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述PCIe故障自修复方法的步骤。
本申请实施例所提供的方法,在***中PCIe链路运行时,通过获取PCIe链路中的CE报错次数和UCE报错次数实现对于***运行状态监控,若CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值时,判定当前PCIe有故障,从***中移除报错设备,以避免报错设备持续运行对于***运行持续带来的不利影响,并根据预先存储的服务器中所有PCIe设备的可调优参数修改报错设备的SI参数寄存器,自动优化报错设备SI参数,通过调优SI参数实现PCIe故障修复后重新接入***,实现故障自修复,减少运维人员和服务器客服人员参与更换设备所带来的实现成本以及对于***运行的不利影响,优化***运行。
相应地,本申请实施例还提供了与上述PCIe故障自修复方法相对应的PCIe故障自修复装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一种PCIe故障自修复方法的实施流程图;
图2为本申请实施例中一种EEPROM存放调优参数的格式示意图;
图3为本申请实施例中一种PCIe故障自修复装置的结构示意图;
图4为本申请实施例中一种PCIe故障自修复设备的结构示意图。
本申请的核心是提供一种PCIe故障自修复方法,可以降低PCIe报错对***运行的影响,同时降低PCIe运维成本。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例中一种PCIe故障自修复方法的流程图,该方法包括以下步骤:
S101、当PCIe链路根据默认SI参数进行数据处理时,获取PCIe链路中的CE报错次数和UCE报错次数;
服务器开机后,PCIe协议的自动training(PCIe链路训练)过程可以生成PCIe设备的SI参数(具体包括设备Tx preset值、上行端口Rx coefficient参数、上行端口Tx preset值、设备Rx coefficient参数等参数),作为默认SI参数,该过程延续传统实现方式,在本实施例中对此不做改动。
在生成默认SI参数后,则在PCIe链路中所有PCIe设备都根据该默认SI参数进行数据的处理,其中,PCIe链路中可以包括若干PCIe设备(在本实施例中,基于PCIe总线标准运行的设备均可称为PCIe设备,在此对于具体的设备类型以及设备用途不做限定),对于PCIe链路中的PCIe设备数量不做限定,每个PCIe设备都根据该默认SI参数进行数据的处理。
PCIe的错误可以分为可修复错误(CEs,简称为CE)和不可修复错误(UCEs,简称为UCE)。***启动后,服务器***中设置有自动报错机制,***中出现PCIe报错时,可修复错误(CE)可以自动地被硬件识别并被自动的校正或恢复,但是UCE***无法自动修复,BIOS获取到PCIe报错后上报 给BMC,记录日志,即***自身会记录CE报错次数和UCE报错次数,在本实施例中只需获取***记录的CE报错次数和UCE报错次数进行判断即可。如果***自身没有记录或者读取不到***记录的报错信息,也可以设置相应的报错检测机制,在本实施例中对此不做限定。
为了简化实现流程,提升报错次数获取效率,获取PCIe链路中的CE报错次数和UCE报错次数的过程具体可以通过轮询PCIE设备的CE寄存器和UCE寄存器;将CE寄存器中记录的receiver error count计数作为CE报错次数,将UCE寄存器中记录的receiver error count计数作为UCE报错次数来实现。
该方式在服务器***运行过程中监控PCIe设备和Root port(CPU PCIe端口)端的报错寄存器,通过轮询PCIE设备的CE寄存器和UCE寄存器,实时监控PCIE设备的运行状态,获取CE的receiver error count的计数以及UCE的receiver error count的计数,判断PCIE设备是否出现(CE或UCE)故障。该方式通过寄存器的直接读取,简化了实现方式,同时该寄存器中记录的数值为***监测后写入,数据精准,可以保证获取数据的准确率。在本实施例中仅以上述报错次数获取方式为例进行介绍,其它途径的数据获取方式(比如读取BadTLP count,Bad DLLP count寄存器的计数值)均可参照本实施例的介绍,在此不再赘述。
S102、判断CE报错次数和UCE报错次数是否达到对应的报错阈值;
虽然***在CE出现时会启动触发修复,以解决CE出现对于***的影响,但是短时间内出现多次PCIe CE也可能是SI(Signal integrity,信号完整性)信号质量的问题,需要及时处理,否则***中会继续出现大量的CE,不仅会影响***的正常运行,还会影响***运行效率。
同时UCE(不可修复错误)触发时问题比较严重,不可修复错误分为非致命的(Non-Fatal)和致命的(Fatal),这就可能会造成数据传输错误、数据传输速率降低等问题,从而影响服务器性能,导致机器宕机或者重启,甚至设备无法正常运行,而目前对于UCE只能等待运维人员参与解决,而若运维人员没有及时发现或解决修复UCE,UCE对于***运行所带来的影响将无法估量。
在本实施例中,为了***运行中避免频繁出现CE对于***运行效率以及稳定性的影响,也为了避免UCE不能及时人工处理对于***运行的影响,设置了CE报错次数对应的报错阈值以及UCE报错次数对应的报错阈值,根据两阈值对CE报错次数和UCE报错次数进行故障衡量,分别判断CE报错次数是否达到对应的报错阈值,以及判断UCE报错次数是否达到对应的报错阈值。其中,两报错阈值的具体数值设定在本实施例中不做限定,可以根据实际经验进行相应设定,比如CE报错次数可以设置为50,UCE报错次数对应的报错阈值可以设置为1等,在此不再赘述。
S103、若CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值,则定位报错设备,并移除报错设备;
若CE报错次数达到对应的报错阈值,指示当前CE出现频率较高,可能会对***运行的稳定性以及运行效率产生影响;若UCE报错次数达到对应的报错阈值,指示存在UCE,可能会对***运行产生影响。
在本实施例中,在CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值,或,CE报错次数与述UCE报错次数同时达到对应的报错阈值时,判定存在设备故障,启动下述步骤的故障自修复。
故障自修复中首先需要定位报错设备,上报该机器故障,同时整个运行集群暂时移除该报错设备,以避免报错设备对于***运行的持续影响,而其中,定位报错设备的实现方式在本实施例中不做限定,比如可以读取报错信息中的B/D/F number,并确定B/D/F number对应的设备,作为报错设备,在本实施例中仅以上述定位方式为例进行介绍,其它实现方式均可参照本实施例的介绍,在此不做限定。
若CE报错次数未达到对应的报错阈值,或,UCE报错次数未达到对应的报错阈值,在本实施例中对于该种情况下的处理方式不做限定,可以不予响应,也可以输出提示信息,以提示相关技术人员看到提示信息后进行人工维护等。
S104、读取预先存储的PCIe调优参数中报错设备对应的待调用参数,作为目标参数;
确认报错设备移出使用后,保证报错设备不会对***的运行继续产生负面影响后,进行报错设备的PCIe SI参数修订。经申请人分析发现,CE和UCE 频繁出现的原因可能是可能是由于PCIe协议的自动training(PCIe链路训练的过程)得到的SI值非最优值,如果自动training过程未得到最合适的SI参数,可能会有UCE报错,或者短时间内大量的CE报错。因此在本实施例中在确定设备故障后针对报错设备的SI值进行修正,以实现故障设备的修复。
在本实施例中,预先设置若干组PCIe调优参数,PCIe调优参数中包括每个PCIe设备的若干组SI建议值,每个设备的每个SI建议值都是提前设置的具有良好的数据处理效果的优选SI参数,在实际运行过程中确定报错设备故障(即CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值),根据预先存储的PCIe调优参数对报错设备的SI值进行优化替换,修改报错设备和相对端口的SI参数,例如Lane Equalization Control寄存器中的Tx Preset值,优选参数已提前设置到BMC的EEPROM中,需调用参数时,BIOS与BMC通信,通过PCIE设备的BDF获取依次推荐的参数调优值。而PCIe链路中除了报错设备之外的设备的SI参数可以不用调整,在此不做限定。
在本实施例中,对于预先存储的PCIe调优参数的具体的存储格式不做限定,可以设置不同读取优先级下所有设备对应的SI参数,也可以设置不同设备下对应的不同的读取优先级的SI参数。另外,对于其中的设备SI参数识别方式不做限定,可以以设备名作为检索条件,也可以以设备其它唯一性信息作为检索条件等,可以根据实际使用需要进行存储格式的设定。
读取预先存储的PCIe调优参数中报错设备对应的待调用参数的实现方式具体可以包括以下步骤:
(1)读取BMC EEPROM中存放的PCIe调优参数;
(2)根据报错设备的B/D/F number确定对应的SI参数存放位置,作为目标位置;
同一配置的服务器中PCIe设备的Bus/Device/Function Number(B/D/F number)是固定的,因此在本实施例中将B/D/F number作为设备检索条件,同时按照设备B/D/F number顺序存放,可以加快检索速度,提升故障修复效率。
(3)确定目标位置下优先级最高的调优参数,作为待调用参数;
每个PCIe设备提前测试好几组可以调优的SI参数,包括设备Tx preset 值、上行端口Rx coefficient参数、上行端口Tx preset值、设备Rx coefficient参数等,按照设备B/D/F number顺序存放,(存放位置在本实施例中不做限定,在本实施例中以存放在BMC的EEPROM中为例,也可以存在在其它位置,实现方式可以参照本实施例,在此不再赘述),如图2所示为一种EEPROM存放调优参数的格式示意图,在本实施例中仅以该种参数存放方式为例进行介绍,其它存放方式均可参照本实施例的介绍,在此不再赘述。
(4)读取待调用参数。
本实施例提供的参数读取方法中,BIOS与BMC通信,读取BMC EEPROM中存放的PCIe调优参数,通过PCIE设备的B/D/F number找到对应的SI参数存放位置,按照优先级由高到低依次读取(比如将排列顺序作为优先级,由前到后依次读取,在本实施例中仅以该种优先级设置以及确定方式为例进行介绍)推荐的参数调优值作为待调用参数进行读取。
S105、将报错设备的默认SI参数替换为目标参数。
将报错设备的替换默认SI参数替换为目标参数,比如在Lane Equalization Control寄存器中写入Tx Preset值,在RX coefficient寄存器中写入RX coefficient系数,控制报错设备根据目标参数进行数据处理,需要说明的是,在将报错设备中原有控制的默认SI参数条混为目标参数后,报错设备按照目标参数进行数据处理的过程可以参照上述步骤,在此不再赘述。
S106、将报错设备作为正常设备接入***。
上述步骤S103中为了避免报错设备对于***运行的影响,将其移除***,经过步骤S104和S105的报错设备修复后,可以将其作为正常设备重新接入***,以增加***中可用设备的数量,提升***处理效率。
而进一步地,为了提升报错设备接入***后设备的正常运行,在将报错设备作为正常设备接入***之前,可以进一步执行以下步骤:
(1)将报错设备作为可疑设备接入***;
作为可疑设备的具体实现可以对其添加可疑标签,或者作为重点监测对象等,在本实施例中对此不做限定。
(2)执行获取PCIe链路中的CE报错次数和UCE报错次数的步骤;直至CE报错次数未达到对应的报错阈值,且,UCE报错次数未达到对应的报错 阈值时,执行将报错设备作为正常设备接入***的步骤。
优化报错设备的SI参数后,对报错设备进行再次监控,BIOS服务PCIe报错寄存器看是否有UCE和短时间内大量CE报错,如果有,继续调优,如果没有报错,设备稳定运行后,再告知集群运行***,将该设备作为正常设备接入***;如果还是有多次UCE报错或短时间内大量CE报错,则调用第二优先级的调优参数,再次对报错设备的SI参数进行调优,该方式可以保证接入***的设备运行的稳定性,从而保证***运行的稳定性。
基于上述介绍,本申请实施例所提供的技术方案,在***中PCIe链路运行时,通过获取PCIe链路中的CE报错次数和UCE报错次数实现对于***运行状态监控,若CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值时,判定当前PCIe有故障,从***中移除报错设备,以避免报错设备持续运行对于***运行持续带来的不利影响,并根据预先存储的服务器中所有PCIe设备的可调优参数修改报错设备的SI参数寄存器,自动优化报错设备SI参数,通过调优SI参数实现PCIe故障修复后重新接入***,实现故障自修复,减少运维人员和服务器客服人员参与更换设备所带来的实现成本以及对于***运行的不利影响,优化***运行。
相应于上面的方法实施例,本申请实施例还提供了一种PCIe故障自修复装置,下文描述的PCIe故障自修复装置与上文描述的PCIe故障自修复方法可相互对应参照。
参见图3所示,该装置包括以下模块:
运行监控单元110主要用于当PCIe链路根据默认SI参数进行数据处理时,获取PCIe链路中的CE报错次数和UCE报错次数;其中,默认SI参数为***启动后自动训练生成的SI参数;
运行判断单元120主要用于判断CE报错次数和UCE报错次数是否达到对应的报错阈值;
故障移除单元130主要用于若CE报错次数达到对应的报错阈值,或,UCE报错次数达到对应的报错阈值,则定位报错设备,并移除报错设备;
参数读取单元140主要用于读取预先存储的PCIe调优参数中报错设备对应的待调用参数,作为目标参数;
故障修复单元150主要用于将报错设备的默认SI参数替换为目标参数;
设备接入单元160主要用于将报错设备作为正常设备接入***。
在本申请的一种具体实施方式中,运行监控单元包括:
寄存器轮询子单元,用于当PCIe链路根据默认SI参数进行数据处理时,轮询PCIE设备的CE寄存器和UCE寄存器;
数据读取子单元,用于将CE寄存器中记录的receiver error count计数作为CE报错次数,将UCE寄存器中记录的receiver error count计数作为UCE报错次数。
在本申请的一种具体实施方式中,参数读取单元包括:
数据读取子单元,用于读取BMC EEPROM中存放的PCIe调优参数;
数据定位子单元,用于根据报错设备的B/D/F number确定对应的SI参数存放位置,作为目标位置;
目标确定子单元,用于确定目标位置下优先级最高的调优参数,作为待调用参数;
目标读取子单元,用于读取待调用参数。
在本申请的一种具体实施方式中,PCIe故障自修复装置还包括:可疑监控单元,可疑监控单元用于将报错设备作为可疑设备接入***;触发运行监控单元执行获取PCIe链路中的CE报错次数和UCE报错次数的步骤;直至CE报错次数未达到对应的报错阈值,且,UCE报错次数未达到对应的报错阈值时,触发设备接入单元执行将报错设备作为正常设备接入***的步骤。
相应于上面的方法实施例,本申请实施例还提供了一种PCIe故障自修复设备,下文描述的一种PCIe故障自修复设备与上文描述的一种PCIe故障自修复方法可相互对应参照。
该PCIe故障自修复设备包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现上述方法实施例的PCIe故障自修复方法的步骤。
具体地,请参考图4,为本实施例提供的一种PCIe故障自修复设备的具体结构示意图,该PCIe故障自修复设备可因配置或性能不同而产生比较大的差 异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机应用程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在PCIe故障自修复设备301上执行存储器332中的一系列指令操作。
PCIe故障自修复设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作***341。
上文所描述的PCIe故障自修复方法中的步骤可以由PCIe故障自修复设备的结构实现。
相应于上面的方法实施例,本申请实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种PCIe故障自修复方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的PCIe故障自修复方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
Claims (10)
- 一种PCIe故障自修复方法,其特征在于,包括:当PCIe链路根据默认SI参数进行数据处理时,获取所述PCIe链路中的CE报错次数和UCE报错次数;其中,所述默认SI参数为***启动后自动训练生成的SI参数;判断所述CE报错次数和所述UCE报错次数是否达到对应的报错阈值;若所述CE报错次数达到对应的报错阈值,或,所述UCE报错次数达到对应的报错阈值,则定位报错设备,并移除所述报错设备;读取预先存储的PCIe调优参数中所述报错设备对应的待调用参数,作为目标参数;将所述报错设备的默认SI参数替换为所述目标参数;将所述报错设备作为正常设备接入***。
- 根据权利要求1所述的PCIe故障自修复方法,其特征在于,所述当PCIe链路根据默认SI参数进行数据处理时,获取所述PCIe链路中的CE报错次数和UCE报错次数,包括:当PCIe链路根据默认SI参数进行数据处理时,轮询PCIE设备的CE寄存器和UCE寄存器;将所述CE寄存器中记录的receiver error count计数作为所述CE报错次数,将所述UCE寄存器中记录的receiver error count计数作为所述UCE报错次数。
- 根据权利要求1所述的PCIe故障自修复方法,其特征在于,所述读取预先存储的PCIe调优参数中所述报错设备对应的待调用参数,作为目标参数,包括:读取BMC EEPROM中存放的PCIe调优参数;根据所述报错设备的B/D/F number确定对应的SI参数存放位置,作为目标位置;确定所述目标位置下优先级最高的调优参数,作为待调用参数;读取所述待调用参数。
- 根据权利要求1所述的PCIe故障自修复方法,其特征在于, 在所述将所述报错设备作为正常设备接入***之前,还包括:将所述报错设备作为可疑设备接入***;执行所述获取所述PCIe链路中的CE报错次数和UCE报错次数的步骤;直至所述CE报错次数未达到对应的报错阈值,且,所述UCE报错次数未达到对应的报错阈值时,执行所述将所述报错设备作为正常设备接入***的步骤。
- 一种PCIe故障自修复装置,其特征在于,包括:运行监控单元,用于当PCIe链路根据默认SI参数进行数据处理时,获取所述PCIe链路中的CE报错次数和UCE报错次数;其中,所述默认SI参数为***启动后自动训练生成的SI参数;运行判断单元,用于判断所述CE报错次数和所述UCE报错次数是否达到对应的报错阈值;故障移除单元,用于若所述CE报错次数达到对应的报错阈值,或,所述UCE报错次数达到对应的报错阈值,则定位报错设备,并移除所述报错设备;参数读取单元,用于读取预先存储的PCIe调优参数中所述报错设备对应的待调用参数,作为目标参数;故障修复单元,用于将所述报错设备的默认SI参数替换为所述目标参数;设备接入单元,用于将所述报错设备作为正常设备接入***。
- 根据权利要求5所述的PCIe故障自修复装置,其特征在于,所述运行监控单元包括:寄存器轮询子单元,用于当PCIe链路根据默认SI参数进行数据处理时,轮询PCIE设备的CE寄存器和UCE寄存器;数据读取子单元,用于将所述CE寄存器中记录的receiver errorcount计数作为所述CE报错次数,将所述UCE寄存器中记录的receivererror count计数作为所述UCE报错次数。
- 根据权利要求5所述的PCIe故障自修复装置,其特征在于,所述参数读取单元包括:数据读取子单元,用于读取BMC EEPROM中存放的PCIe调优参数;数据定位子单元,用于根据所述报错设备的B/D/F number确定对应的SI参数存放位置,作为目标位置;目标确定子单元,用于确定所述目标位置下优先级最高的调优参数,作为待调用参数;目标读取子单元,用于读取所述待调用参数。
- 根据权利要求5所述的PCIe故障自修复装置,其特征在于,还包括:可疑监控单元,所述可疑监控单元用于将所述报错设备作为可疑设备接入***;触发所述运行监控单元执行所述获取所述PCIe链路中的CE报错次数和UCE报错次数的步骤;直至所述CE报错次数未达到对应的报错阈值,且,所述UCE报错次数未达到对应的报错阈值时,触发所述设备接入单元执行所述将所述报错设备作为正常设备接入***的步骤。
- 一种PCIE故障自修复设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述PCIE故障自修复方法的步骤。
- 一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述PCIE故障自修复方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/270,186 US20240103961A1 (en) | 2021-04-29 | 2022-04-28 | PCIe Fault Auto-Repair Method, Apparatus and Device, and Readable Storage Medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110474250.9 | 2021-04-29 | ||
CN202110474250.9A CN113176963B (zh) | 2021-04-29 | 2021-04-29 | 一种PCIe故障自修复方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022228499A1 true WO2022228499A1 (zh) | 2022-11-03 |
Family
ID=76925365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/089743 WO2022228499A1 (zh) | 2021-04-29 | 2022-04-28 | 一种PCIe故障自修复方法、装置、设备及可读存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240103961A1 (zh) |
CN (1) | CN113176963B (zh) |
WO (1) | WO2022228499A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113176963B (zh) * | 2021-04-29 | 2022-11-11 | 山东英信计算机技术有限公司 | 一种PCIe故障自修复方法、装置、设备及可读存储介质 |
CN113849368B (zh) * | 2021-09-02 | 2023-07-18 | 苏州浪潮智能科技有限公司 | 一种基于retimer温漂问题的自修复装置及方法 |
CN114564334B (zh) * | 2022-04-27 | 2022-07-22 | 苏州浪潮智能科技有限公司 | 一种mrpc数据处理方法、***及相关组件 |
CN115150254B (zh) * | 2022-06-29 | 2023-05-23 | 苏州浪潮智能科技有限公司 | 一种PCIe链路故障检测方法、检测装置、设备及介质 |
CN115686901B (zh) * | 2022-10-25 | 2023-08-04 | 超聚变数字技术有限公司 | 内存故障分析方法及计算机设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130246855A1 (en) * | 2010-11-12 | 2013-09-19 | Fujitsu Limited | Error Location Specification Method, Error Location Specification Apparatus and Computer-Readable Recording Medium in Which Error Location Specification Program is Recorded |
CN105808394A (zh) * | 2014-12-31 | 2016-07-27 | 中兴通讯股份有限公司 | 一种服务器自愈的方法和装置 |
US20170091013A1 (en) * | 2015-09-28 | 2017-03-30 | Netapp, Inc. | Pcie error reporting and throttling |
CN109376028A (zh) * | 2018-09-27 | 2019-02-22 | 郑州云海信息技术有限公司 | 一种pcie设备纠错方法与装置 |
CN111008091A (zh) * | 2019-12-06 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种内存ce的故障处理方法、***及相关装置 |
CN113176963A (zh) * | 2021-04-29 | 2021-07-27 | 山东英信计算机技术有限公司 | 一种PCIe故障自修复方法、装置、设备及可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140181621A1 (en) * | 2012-12-26 | 2014-06-26 | Skymedi Corporation | Method of arranging data in a non-volatile memory and a memory control system thereof |
CN107066417A (zh) * | 2017-02-28 | 2017-08-18 | 郑州云海信息技术有限公司 | 一种链路参数在线调整的方法与装置 |
CN111984477B (zh) * | 2020-07-09 | 2022-05-17 | 瑞芯微电子股份有限公司 | 一种PCIe设备信号参数动态校正装置和方法 |
CN112015597B (zh) * | 2020-10-26 | 2021-04-13 | 苏州浪潮智能科技有限公司 | 一种故障隔离方法、装置、设备及计算机可读存储介质 |
-
2021
- 2021-04-29 CN CN202110474250.9A patent/CN113176963B/zh active Active
-
2022
- 2022-04-28 WO PCT/CN2022/089743 patent/WO2022228499A1/zh active Application Filing
- 2022-04-28 US US18/270,186 patent/US20240103961A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130246855A1 (en) * | 2010-11-12 | 2013-09-19 | Fujitsu Limited | Error Location Specification Method, Error Location Specification Apparatus and Computer-Readable Recording Medium in Which Error Location Specification Program is Recorded |
CN105808394A (zh) * | 2014-12-31 | 2016-07-27 | 中兴通讯股份有限公司 | 一种服务器自愈的方法和装置 |
US20170091013A1 (en) * | 2015-09-28 | 2017-03-30 | Netapp, Inc. | Pcie error reporting and throttling |
CN109376028A (zh) * | 2018-09-27 | 2019-02-22 | 郑州云海信息技术有限公司 | 一种pcie设备纠错方法与装置 |
CN111008091A (zh) * | 2019-12-06 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种内存ce的故障处理方法、***及相关装置 |
CN113176963A (zh) * | 2021-04-29 | 2021-07-27 | 山东英信计算机技术有限公司 | 一种PCIe故障自修复方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113176963A (zh) | 2021-07-27 |
US20240103961A1 (en) | 2024-03-28 |
CN113176963B (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022228499A1 (zh) | 一种PCIe故障自修复方法、装置、设备及可读存储介质 | |
TWI229796B (en) | Method and system to implement a system event log for system manageability | |
US10430260B2 (en) | Troubleshooting method, computer system, baseboard management controller, and system | |
CN114328102B (zh) | 设备状态监控方法、装置、设备及计算机可读存储介质 | |
CN111414268B (zh) | 故障处理方法、装置及服务器 | |
AU2014399227A1 (en) | Fault Processing Method, Related Apparatus and Computer | |
CN111796959B (zh) | 宿主机容器自愈方法、装置及*** | |
CN109933478B (zh) | 一种存储***的故障处理方法和存储*** | |
CN112395122A (zh) | 闪存控制器及闪存控制器的方法 | |
TW201942756A (zh) | 用以檢查纜線錯誤的方法及系統 | |
CN113645085A (zh) | 智能网卡的异常检测方法、装置、电子设备及存储介质 | |
CN101667953B (zh) | 一种快速环网物理链路状态的上报方法及装置 | |
WO2024124862A1 (zh) | 基于服务器的内存处理方法和装置、处理器及电子设备 | |
CN114281639A (zh) | 一种存储服务器故障sas物理链路屏蔽装置及方法 | |
CN113076210A (zh) | 服务器故障诊断结果通知方法、***、终端及存储介质 | |
CN117271234A (zh) | 故障诊断方法、装置、存储介质及电子装置 | |
CN112181740A (zh) | 一种排除故障的方法、装置及存储介质 | |
CN111209129A (zh) | 基于amd平台的内存优化方法和装置 | |
CN103067101A (zh) | 通信终端测试监控方法和装置 | |
CN113868001B (zh) | 一种内存修复结果的检查方法、***及计算机存储介质 | |
CN114253610A (zh) | 一种器件老化导致***无法正常启动的改进办法及装置 | |
CN114138600A (zh) | 一种固件关键信息的存储方法、装置、设备及存储介质 | |
CN110471814B (zh) | 服务器装置的错误报告功能的控制方法 | |
CN114064401A (zh) | 定位硬盘故障的方法、装置、电子设备及存储介质 | |
CN113742113A (zh) | 一种嵌入式***健康管理方法、设备及储存介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22794969 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18270186 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22794969 Country of ref document: EP Kind code of ref document: A1 |