CN107168815B - 一种收集硬件错误信息的方法 - Google Patents

一种收集硬件错误信息的方法 Download PDF

Info

Publication number
CN107168815B
CN107168815B CN201710359111.5A CN201710359111A CN107168815B CN 107168815 B CN107168815 B CN 107168815B CN 201710359111 A CN201710359111 A CN 201710359111A CN 107168815 B CN107168815 B CN 107168815B
Authority
CN
China
Prior art keywords
server
node
information
hardware
expansion module
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
Application number
CN201710359111.5A
Other languages
English (en)
Other versions
CN107168815A (zh
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201710359111.5A priority Critical patent/CN107168815B/zh
Publication of CN107168815A publication Critical patent/CN107168815A/zh
Application granted granted Critical
Publication of CN107168815B publication Critical patent/CN107168815B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0709Error 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 distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种收集硬件错误信息的方法,用于快速、准确的采集服务器内硬件错误信息,盖方法包括以下步骤:步骤1:划分节点并设置节点控制器扩展模块;步骤2:用户自定义寄存器列表及数据结构;步骤3:设置服务器中断功能;步骤4:重启服务器,使服务器进入待命状态;步骤5:服务器发生硬件错误,节点采集硬件信息。该方法利用高端服务器中节点控制器扩容特性,实现***出错时能及时收集硬件状态信息并保存的功能,该功能不用考虑带内***状态,直接通过带外***读取信息,通过对已读取信息的详细解析,从而实现具体问题的定位。

Description

一种收集硬件错误信息的方法
技术领域
本发明涉及高端服务器监控领域,尤其涉及一种高端服务器收集硬件错误信息的方法。
背景技术
随着互联网的广泛应用,网络对服务器提出了更高的要求,作为服务器产业的原始动力,先进技术的应用于对于用户采购会起到决定性的作用,在网络技术、虚拟化技术、分布式应用快速发展的今天,服务器所要求的可用性,可靠性,可服务性的指标越来越高。
特别是金融、电信业务的正常运转高度依赖于信息***的持续稳定运行,对高端服务器的可用性也提出了很高的要求,不仅要求高端服务器***的可用度达到99.999%,而且对于出现硬件错误后对于错误的定位和处理速度,也提出了更高的要求。
高端服务器由于其复杂的硬件架构对***容错技术有更高的要求,目前,服务器硬件错误信息的采集原理如图1所示,***固件根据UEFI标准和ACPI标准提供相应的数据给操作***,操作***进行解析,同时***固件收集信息并解析最后将出错硬件信息传给BMC。
然而,对于上述的方法来说,由于高端服务器***复杂,***某个硬件出错可能导致多个硬件同时报错,***日志同时出现多个硬件错误,对***出错场景的分析受限,从而难以实现问题的精准定位。
发明内容
为了解决上述问题,本发明提供了一种收集硬件错误信息的方法,利用高端服务器中节点控制器扩容特性,实现***出错时能及时收集硬件状态信息并保存的功能,该功能不用考虑带内***状态,直接通过带外***读取信息,通过对已读取信息的详细解析,从而实现具体问题的定位。
本发明采用以下技术方案:
一种收集硬件错误信息的方法,用于快速、准确的采集服务器内硬件错误信息,其特征在于,所述的方法包括以下步骤:
步骤1:划分节点并设置节点控制器扩展模块;
步骤2:用户自定义寄存器列表及数据结构;
步骤3:设置服务器中断功能;
步骤4:重启服务器,使服务器进入待命状态;
步骤5:服务器发生硬件错误,节点采集硬件信息。
进一步的,步骤1中,每一个节点至少包括一个CPU和一个节点控制器。
进一步的,在步骤1中,扩展模块的设置标准为:扩展模块是设置在节点控制器内部的存储模块,具有与存储控制器数据交互功能,以及与带外***数据交互功能。
优选的,节点控制器和扩展模块之间通过地址映射实现数据存储。
优选的,带外***和扩展模块之间通过SMBUS协议实现数据读取。
进一步的,步骤2中,用户自定义寄存器列表及数据结构的具体过程为:
研发人员首先结合芯片手册,选择需要收集的错误状态寄存器并自定义数据结构;然后形成文档并开发出解析工具对获取的错误信息进行解析,嵌入在***固件用于收集错误信息模块。
进一步的,步骤3的具体实现原理为:***出错时,***管理中断功能使服务器***进入中断服务程序。
进一步的,步骤4的具体实现过程为:
1)重启服务器,硬件初始化并启动服务器中断功能;
2)将扩展模块的存储部分映射到带内***地址空间的一段MMIO地址段,并把这段地址空间的SAD指向节点控制器;
3)***随机指定主节点和从节点;
4)***通过主节点连接IO,并断开从节点上的IO接口。
进一步的,步骤5中,节点采集硬件信息的具体过程为:
1)启动服务器中断功能,所有CPU停止处理当前任务,进入中断服务程序;
2)步骤2中自定义的寄存器及数据结构分别收集数据,并将数据拷贝到主节点的扩展模块内;
3)从带外***访问主节点扩展模块并读取硬件错误信息。
本发明的有益效果是:
1、每一次发生硬件错误后,本发明采集的是全部预设的寄存器和数据结构的信息,也可以算是全部的硬件信息,这样一来,就不会产生信息采集的遗漏,确保错误信息完全包含在所采集的信息内。
2、该扩展模块具备的特征是能够同时被带内和带外***访问,其存储大小能够保存所有节点内部CPU、NC及IO的各个子模块错误状态寄存器的信息。因此,可以十分方便的将***内采集到的信息导到***外部,将后续的分析过程放在服务器***之外来处理,即降低了服务器自身的能耗,又提高了分析处理的速度,尽量减少硬件错误对服务器运行的影响。
3、扩展模块设置在每一节点内,因此,在主、从节点的选择上就有充分的余地,也可以说是没有了选择的限制,大大减少了***重启的时间。
附图说明
图1是现有技术的功能原理图;
图2是本发明方法功能原理图;
图3是本发明主、从节点一种典型应用的原理结构框图;
图4是本发明方法的流程图。
具体实施方式
为了便于对于本申请的理解,对于本申请设计的英文含义进行说明,UEFI是Unified Extensible Firmware Interface的简称,中文名称为通用可扩展固件接口;ACPI是Advanced Configuration and Power Interface的简称,中文名称为高级电源管理接口;BMC是Board manager controller的简称,中文名称为基板管理控制器;NC是NodeController的简称,中文名称为节点控制器;BSP是BootStrap Processor的简称,中文名称为自举处理器;MMIO是Memory Map IO的简称,中文名称为内存映射I/O;SAD是SourceAddress Decode的简称,中文名称为源地址解析。
下面结合具体实施例对本申请的方法进行详细说明。
如图4所示,一种收集硬件错误信息的方法,用于快速、准确的采集服务器内硬件错误信息,所述的方法包括以下步骤:
步骤1:划分节点并设置节点控制器扩展模块,具体要求为:
每一个节点至少包括一个CPU和一个节点控制器,也可以增加CPU和节点控制器的数量,比如图3中的节点就有4个CPU和2个节点控制器组成。
扩展模块的设置标准为:扩展模块是设置在节点控制器内部的存储模块,具有与存储控制器数据交互功能,以及与带外***数据交互功能。其中,节点控制器和扩展模块之间通过地址映射实现数据存储;带外***和扩展模块之间通过SMBUS协议实现数据读取。
扩展模块的大小根据***的最大硬件配置设计,比如收集一个CPU的信息需要64KB,***有16颗CPU的话就要1MB大小,还有一个节点控制器大概需要4KB,***有8个节点控制器就需要32KB,加起来大概1056KB大小。
步骤2:用户自定义寄存器列表及数据结构,导致本方法的整体原理和现有技术相比,增加了新的思路,整体功能原理如图2所示,自定义寄存器列表及数据结构的具体原理为:研发人员可以通过芯片手册归纳出需要收集的错误状态寄存器并自定义数据结构,然后形成文档并开发出解析工具对获取的错误信息进行解析,嵌入在***固件的收集错误信息模块,功能和解析工具(可以是基于OS环境下的脚本或可执行软件)需要根据文档定义的数据结构体系进行开发才能保证一致。
一般CPU的有Machine Check MSR(Model Specific Register)和各个功能模块CSR,不同的CPU有不同的寄存器名称,需要根据***设计定义,下表是一个CPU内部的模块列表举例:
Figure BDA0001299890050000051
每个CPU的寄存器数量不一样,每个寄存器数据大小是4或8个字节,加上节点控制器的寄存器,这个需要根据芯片手册归纳出具体的寄存器数量,一般以一个16路***为例,估计1MB~2MB大小可以满足需求。
步骤3:设置服务器中断功能,具体要求为:***出错时,***管理中断功能使服务器***进入中断服务程序。
步骤4:重启服务器,使服务器进入待命状态,具体实现过程为:
1)重启服务器,硬件初始化并启动服务器中断功能,保证在***出错时,***管理中断功能使服务器***进入中断服务程序;
2)将扩展模块的存储部分映射到带内***地址空间的一段MMIO地址段,并把这段地址空间的SAD指向节点控制器,使得节点控制器能够正确解析带内***处理器写入的数据信息并存储在扩展模块中;
3)***随机指定主节点和从节点,由于每个节点硬件设计是一样的,***管理控制器开机时会指定某一节点作为主节点,其余节点就自动成为从节点;
4)每个节点均有连接慢速的IO设备,类似以前的南桥,包括USB、VGA、串口等,选定主节点后,***通过主节点连接IO,并断开从节点上的IO接口。
步骤5:服务器发生硬件错误,节点采集硬件信息,具体过程为:
1、启动服务器中断功能,所有CPU停止处理当前任务,进入中断服务程序;需要注意的是,只要发***管理中断,所有CPU都会停止处理当前任务,进入到这个中断里面,中断处理完后如果错误可以修复就能退回到操作***,如果不能修复可以收集完信息直接重启或关机。
2、步骤2中自定义的寄存器及数据结构分别收集数据,并将数据拷贝到主节点的扩展模块内,具体原理为:软件中断服务程序唤醒各个PBSP收集各自硬件信息存储到内存,由SBSP收集其它信息并将***硬件信息拷贝到主节点节点控制器的扩展模块中。
3、从带外***访问主节点扩展模块并读取硬件错误信息。
信息采集完成后,需要在服务器外部对信息进行解析,并将解析结果反馈到服务器***中。
应当指出,以上所述具体实施方式可以使本领域的技术人员更全面地理解本发明的具体结构,但不以任何方式限制本发明创造。因此,尽管说明书及附图和实施例对本发明创造已进行了详细的说明,但是,本领域技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换;而一切不脱离本发明创造的精神和范围的技术方案及其改进,其均涵盖在本发明创造专利的保护范围当中。

Claims (1)

1.一种收集硬件错误信息的方法,用于快速、准确的采集服务器内硬件错误信息,其特征在于,所述的方法包括以下步骤:
步骤1:划分节点并设置节点控制器扩展模块;
步骤1中,每一个节点至少包括一个CPU和一个节点控制器;
在步骤1中,扩展模块的设置标准为:扩展模块是设置在节点控制器内部的存储模块,具有与存储控制器数据交互功能,以及与带外***数据交互功能;
节点控制器和扩展模块之间通过地址映射实现数据存储;
带外***和扩展模块之间通过SMBUS协议实现数据读取;
步骤2:用户自定义寄存器列表及数据结构;
步骤2中,用户自定义寄存器列表及数据结构的具体过程为:
研发人员首先结合芯片手册,选择需要收集的错误状态寄存器并自定义数据结构;然后形成文档并开发出解析工具对获取的错误信息进行解析,嵌入在***固件用于收集错误信息的模块;
步骤3:设置服务器中断功能;
步骤3的具体实现原理为:***出错时,***管理中断功能使服务器***进入中断服务程序;
步骤4:重启服务器,使服务器进入待命状态;
步骤4的具体实现过程为:
1)重启服务器,硬件初始化并启动服务器中断功能;
2)将扩展模块的存储部分映射到带内***地址空间的一段MMIO地址段,并把这段地址空间的SAD指向节点控制器;
3)***随机指定主节点和从节点;
4)***通过主节点连接IO,并断开从节点上的IO接口;
步骤5:服务器发生硬件错误,节点采集硬件信息;
步骤5中,节点采集硬件信息的具体过程为:
1)启动服务器中断功能,所有CPU停止处理当前任务,进入中断服务程序;
2)步骤2中自定义的寄存器及数据结构分别收集数据,并将数据拷贝到主节点的扩展模块内;
3)从带外***访问主节点扩展模块并读取硬件错误信息。
CN201710359111.5A 2017-05-19 2017-05-19 一种收集硬件错误信息的方法 Active CN107168815B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710359111.5A CN107168815B (zh) 2017-05-19 2017-05-19 一种收集硬件错误信息的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710359111.5A CN107168815B (zh) 2017-05-19 2017-05-19 一种收集硬件错误信息的方法

Publications (2)

Publication Number Publication Date
CN107168815A CN107168815A (zh) 2017-09-15
CN107168815B true CN107168815B (zh) 2020-09-18

Family

ID=59815178

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710359111.5A Active CN107168815B (zh) 2017-05-19 2017-05-19 一种收集硬件错误信息的方法

Country Status (1)

Country Link
CN (1) CN107168815B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051123B (zh) * 2019-12-27 2023-12-26 上海微电子装备(集团)股份有限公司 一种半导体设备的处理器及固件数据采集方法
CN113778667B (zh) * 2021-08-17 2024-01-23 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 服务器节点信息管理***和方法、可读介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100552636C (zh) * 2007-12-14 2009-10-21 中国人民解放军国防科学技术大学 一种用于并行计算机***的带外诊断测试接口及测试方法
US8285900B2 (en) * 2009-02-17 2012-10-09 The Board Of Regents Of The University Of Texas System Method and apparatus for congestion-aware routing in a computer interconnection network
CN103500133A (zh) * 2013-09-17 2014-01-08 华为技术有限公司 故障定位方法及装置
US9256489B2 (en) * 2013-10-30 2016-02-09 International Business Machines Corporation Synchronized debug information generation
CN104407952A (zh) * 2014-11-12 2015-03-11 浪潮(北京)电子信息产业有限公司 一种通过多cpu节点控制器芯片进行调试的方法和***

Also Published As

Publication number Publication date
CN107168815A (zh) 2017-09-15

Similar Documents

Publication Publication Date Title
JP6530774B2 (ja) ハードウェア障害回復システム
US9778844B2 (en) Installation of operating system on host computer using virtual storage of BMC
US9811369B2 (en) Method and system for physical computer system virtualization
US9229730B2 (en) Multi-chip initialization using a parallel firmware boot process
CN102929747B (zh) 基于龙芯服务器的Linux操作***崩溃转储的处理方法
US6910160B2 (en) System, method, and computer program product for preserving trace data after partition crash in logically partitioned systems
US10303458B2 (en) Multi-platform installer
US10606677B2 (en) Method of retrieving debugging data in UEFI and computer system thereof
CN101364193A (zh) 自动恢复bios的方法以及使用该方法的电脑与***
CN109324991B (zh) 一种pcie设备的热插拔装置、方法、介质及***
US20220283928A1 (en) Kernel debugging system and method
JP2016518654A (ja) サーバ制御方法及びサーバ制御装置
WO2022134855A1 (zh) PCIe外插卡的带宽分配方法、装置、设备及存储介质
WO2013088818A1 (ja) 仮想計算機システム、仮想化機構、及びデータ管理方法
CN103257922B (zh) 一种快速测试bios与os接口代码可靠性的方法
CN102096597A (zh) 使用管理引擎的虚拟总线设备
CN107168815B (zh) 一种收集硬件错误信息的方法
CN114765051A (zh) 内存测试方法及装置、可读存储介质、电子设备
US11226755B1 (en) Core dump in a storage device
US10331557B1 (en) Distribution of memory address resources to bus devices in a multi-processor computing system
JP2005032243A (ja) 更新されたプロセッサポーリング情報を提供する方法および装置
CN116627702A (zh) 虚拟机的宕机重启方法及装置
CN102455919A (zh) 基本输入输出***自动最佳化设定方法
CN113064750B (zh) 一种bios日志信息的追踪方法、装置和介质
CN112667363A (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

Effective date of registration: 20200821

Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province

Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd.

Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601

Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant