CN113868003B - 一种服务器flash系统校验及故障定位方法及装置 - Google Patents

一种服务器flash系统校验及故障定位方法及装置 Download PDF

Info

Publication number
CN113868003B
CN113868003B CN202111094944.6A CN202111094944A CN113868003B CN 113868003 B CN113868003 B CN 113868003B CN 202111094944 A CN202111094944 A CN 202111094944A CN 113868003 B CN113868003 B CN 113868003B
Authority
CN
China
Prior art keywords
flash
firmware
refreshing
bmc
judging whether
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
CN202111094944.6A
Other languages
English (en)
Other versions
CN113868003A (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 CN202111094944.6A priority Critical patent/CN113868003B/zh
Publication of CN113868003A publication Critical patent/CN113868003A/zh
Application granted granted Critical
Publication of CN113868003B publication Critical patent/CN113868003B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/079Root cause analysis, i.e. error or fault diagnosis
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种服务器flash系统校验及故障定位方法及装置,所述方法步骤:设置第三flash,并在对第一、第二flash进行固件刷新前,刷新第三flash进行固件备份;BMC启动调试后,将第一flash与第二flash或与自身刷新前固件进行比对,判断二者是否一致,并在不一致时解析设置项,再使用身刷新前固件对第一flash还原;分别使用第一和第二flash进行启动,判断是否可以复现问题,并在复现问题时,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试。本发明增加备份flash,对第一flash中固件进行还原前后调试,实现固件刷新异常故障排查,节约固件版本问题排查时间。

Description

一种服务器flash系统校验及故障定位方法及装置
技术领域
本发明属于服务器固件刷新技术领域,具体涉及一种服务器flash系统校验及故障定位方法及装置。
背景技术
BMC及BIOS的flash使用SPI接口进行数据读取,采用主从模式架构,支持一个或多个从设备,在大多数应用场合中,可以使用一个主控制器作为主控机来控制数据,并向一个或几个外围设备传送该数据,从器件只有在主控机发命令时才能接收或发送数据。SPI是一个环行线,包括:串行时钟线(SCK),主机输入/从机输出数据线(MISO),主机输出/从机输入数据线(MOSI),和低电平有效的从机选择线(CS)。
BMC及BIOS flash升级的方式包括uTool工具刷新,片上flash刷新,BMC网页刷新等,硬件工程师调试时最常使用的方式的BMC网页刷新,该方式首先将hpm格式的镜像文件上传到BMC,解码后再选择对应的flash进行刷新。
当前服务器设计时涉及到存储固件的flash的模块主要包括BMC和BIOS,设计上一般使用一到两个flash,如flash0和flash1,启动过程中一般默认选择flash0,当flash0中的固件检测失败时将选择flash1启动。同样地,修改固件中的设置项时,如post过程中进入BIOS设置界面,也只对flash0中的设置项进行修改,flash1中维持不变。
服务器调试过程一般有如下几种方式:一是重新上电,包括DC上电和AC上电;二是重新组装,根据报错类型重新插拔相关部件;三是重新刷新固件版本,补入BMC的flash,BIOS的flash等;四是抓取相关日志。这其中,重新刷新固件版本是调试的重要手段之一,例如,同样版本刷新,版本升级及版本降级等。重新刷新固件版本主要可以帮助硬件工程师排除BMC、BIOS固件版本的影响,并帮助固件工程师对问题进行定位。目前,调试过程中的刷新方式主要使用BMC页面下上传固件镜像文件进行版本刷新,需要工程师首先准备好不同版本的固件镜像文件并手动进行刷新,从而对比验证是否是固件版本引起的故障,但这种方式仅限于验证并进行初步的故障定位,工程师仍然无法判断该故障是因为固件刷新不完全或是固件本身有缺陷,也不能帮助工程师分析固件引起当前故障的具体位置。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种服务器flash系统校验及故障定位方法及装置,是非常有必要的。
发明内容
针对现有技术的上述现有的重新刷新BMC及BIOS固件版在服务器调试过程中验证是否固件版本问题引起的故障,仅限于初步故障定位,无法确定故障是因为故障刷新不完全导致或者固件本身的问题,更无法定位故障的具体位置的缺陷,本发明提供一种服务器flash系统校验及故障定位方法及装置,以解决上述技术问题。
第一方面,本发明提供一种服务器flash系统校验及故障定位方法,包括如下步骤:
S1.在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;
S2.BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;
S3.分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题。BMC通过SPI总线发送固件刷新指令。
进一步地,步骤S1具体步骤如下:
S11.在BMC或BIOS中设置第三flash;
S12.判断第一flash与第二flash是否同步刷新;
若是同步刷新,进入步骤S13;
若是异步刷新,进入步骤S14;
S13.将第一flash中固件或第二flash中固件存储到第三flash,再在第一flash与第二flash中刷新相同固件,进入步骤S2;
S14.在第一flash中刷新第一固件,在第二flash中刷新第二固件,并将第一固件与第二固件进行逻辑处理后,生成用于校验的第三固件,再将第三固件存储到第三flash。进行同步刷新时,第一flash与第二flash中之前刷新的是相同的固件,进行固件升级时,先将第一flash或第二flash中原始固件写入第三flash中进行存储备份,再对第一flash和第二flash中固件进行同步刷新,备份在第三flash中固件在后续问题复现时使用;进行异步刷新时,刷新固件时首先将刷新到第一flash中和第二flash中的第一固件和第二固件备份到系统下,然后分别对第一flash和第二flash进行刷新,然后将两版固件逻辑处理后生成一版用于校验的第三固件刷新到第三flash中;而通过第三固件和第二固件可以还原出第一固件,通过第三固件和第一固件可以还原出第二固件,当第一flash或第二flash中的固件有损坏时可以还原出原本的固件代码,实现固件损坏后的自动还原。
进一步地,步骤S2具体步骤如下:
S21.当BMC启动调试或检测到BMC或BIOS的指定故障时,启动BMC或BIOS的固件版本调试;
S22.判断第一flash与第二flash是否同步刷新;
若是同步刷新,进入步骤S23;
若是异步刷新,进入步骤S26;
S23.BMC读取第一flash和第二flash中固件进行比对,判断是否一致;
若一致,进入步骤S25;
若不一致,进入步骤S24;
S24.对第一flash和第二flash中固件不一致的位置解析具体设置项后,生成日志;
S25.BMC读取第三flash中固件信息后写入第一flash,还原第一flash中原有固件,进入步骤S3;
S26.BMC读取第二flash中第二固件和第三flash中第三固件,还原出第一flash中原有固件,并将第一flash中固件与第一flash中原有固件进行比对,判断是否一致;
若一致,进入步骤S28;
若不一致,进入步骤S27;
S27.对第一flash中固件和第一flash中原有固件不一致的位置解析具体设置项后,生成日志;
S28.BMC将还原后的第一flash中原有固件写入第一flash中。在同步刷新时,将用于启动的第一flash和第二flash中固件进行比对,记录不一致项,再将原有备份的固件还原到第一flash中进行后续调试;在异步刷新时,还原出第一flash中原有固件,将第一flash刷新前后的固件进行比对,记录不一致项,再将原有备份的固件还原到第一flash中进行后续调试。
进一步地,步骤S22中,若第一flash与第二flash同步刷新,进入步骤S23之前还包括如下步:
S2A.判断BMC检测到的报错信息,是否可以直接定位到BMC或BIOS的对应故障;
若是,进入步骤S2B;
若否,进入步骤S2C;
S2B.BMC直接针对固件版本进行调试,进入步骤S23;
S2C.BMC发出告警,并等待上传的手动抓取日志后,对固件版本进行调试,进入步骤S23。可以直接定位到的BMC或BIOS的故障,如BMC丢失的部分传感器的记录,而无法直接定位到的BMC或BIOS的故障,如宕机故障。
进一步地,第一flash与第二flash同步刷新对应BMC网页升级固件的应用场景;
第一flash与第二flash异步刷新对应片上flash工具或uTool工具升级固件的应用场景。同步刷新与异步刷新对应不同应用场景,可根据需要灵活选择,但两种刷新方式均可通过备份的固件进行调试排查固件版本问题。
进一步地,步骤S3具体步骤如下:
S31.通过第一flash进行启动,判断是否可以复现问题;
若是,进入步骤S34;
若否,进入步骤S32;
S32.记录日志,并切换第二flash进行启动,判断是否可用复现问题;
若是,进入步骤S34;
若否,进入步骤S33;
S33.记录日志,继续测试设定时间段后判断是否复现问题;
S34.暂停测试,对日志中记录的问题进行分析,结束。分别通过第一flash和第二flash进行启动,检测固件版本问题是否复现,以及对问题进行排查分析。
第二方面,本发明提供一种服务器flash系统校验及故障定位装置,包括:
备份flash设置模块,用于在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;
第一flash固件刷新前后比对模块,用于BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;
固件刷新问题复现模块,用于分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题。
进一步地,备份flash设置模块包括:
第三flash设置单元,用于在BMC或BIOS中设置第三flash;
刷新模式第一判断单元,用于判断第一flash与第二flash是否同步刷新;
固件备份单元,用于同步刷新时,将第一flash中固件或第二flash中固件存储到第三flash,再在第一flash与第二flash中刷新相同固件;
校验固件备份单元,用于异步刷新时,在第一flash中刷新第一固件,在第二flash中刷新第二固件,并将第一固件与第二固件进行逻辑处理后,生成用于校验的第三固件,再将第三固件存储到第三flash。
进一步地,第一flash固件刷新前后比对模块包括:
固件版本调试启动单元,用于当BMC启动调试或检测到BMC或BIOS的指定故障时,启动BMC或BIOS的固件版本调试;
刷新模式第二判断单元,用于判断第一flash与第二flash是否同步刷新;
第一flash与第二flash固件比对单元,用于同步刷新时,BMC读取第一flash和第二flash中固件进行比对,判断是否一致;
第一异常点解析单元,用于第一flash中固件与第二flash中固件比对不一致时,对第一flash和第二flash中固件不一致的位置解析具体设置项后,生成日志;
第一flash固件第一还原单元,用于通过BMC读取第三flash中固件信息后写入第一flash,还原第一flash中原有固件;
原有固件与当前固件比对单元,用于异步刷新时,BMC读取第二flash中第二固件和第三flash中第三固件,还原出第一flash中原有固件,并将第一flash中固件与第一flash中原有固件进行比对,判断是否一致;
第二异常点解析单元,用于当第一flash中固件与第一flash中原有固件比对不一致时,对第一flash中固件和第一flash中原有固件不一致的位置解析具体设置项后,生成日志;
第一flash固件第二还原单元,用于BMC将还原后的第一flash中原有固件写入第一flash中。
进一步地,固件刷新问题复现模块包括:
第一复现问题判断单元,用于通过第一flash进行启动,判断是否可以复现问题;
第二复现问题判断单元,用于第一flash启动后无法复现问题时,记录日志,并切换第二flash进行启动,判断是否可用复现问题;
日志记录单元,用于第二flash启动后无法复现问题时,记录日志,继续测试设定时间段后判断是否复现问题;
问题分析单元,用于第一flash启动后或第二flash启动后,可以复现问题时,暂停测试,对日志中记录的问题进行分析。
本发明的有益效果在于,
本发明提供的服务器flash系统校验及故障定位方法及装置,保留原有第一flash和第二flash进行启动,基于SPI协议增加第三flash进行存储,按照第一flash和第二flash同步刷新和异步刷新两种情况,使用第三flash存储的固件对第一flash中固件进行还原后调试,实现固件刷新异常和固件代码引起的故障进行排查,节约调试过程中为排查固件版本问题花费时间。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的服务器flash系统校验及故障定位方法实施例1的流程示意图。
图2是本发明的服务器flash系统校验及故障定位方法实施例2的流程示意图。
图3是本发明的服务器flash系统校验及故障定位方法及装置示意图。
图中,1-备份flash设置模块;1.1-第三flash设置单元;1.2-刷新模式第一判断单元;1.3-固件备份单元;1.4-校验固件备份单元;2-第一flash固件刷新前后比对模块;2.1-固件版本调试启动单元;2.2-刷新模式第二判断单元;2.3-第一flash与第二flash固件比对单元;2.4-第一异常点解析单元;2.5-第一flash固件第一还原单元;2.6-原有固件与当前固件比对单元;2.7-第二异常点解析单元;2.8-第一flash固件第二还原单元;3-固件刷新问题复现模块;3.1-第一复现问题判断单元;3.2-第二复现问题判断单元;3.3-日志记录单元;3.4-问题分析单元。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
BMC,是Baseboard Manager Controller的简称,基板管理控制器。
BIOS,是Basic Input Output System的简称,基本输入输出系统。
SPI,是Serial Peripheral Interface的简称,串行外设接口总线。
实施例1:
如图1所示,本发明提供一种服务器flash系统校验及故障定位方法,包括如下步骤:
S1.在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;
S2.BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;
S3.分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题。
实施例2:
如图2所示,本发明提供一种服务器flash系统校验及故障定位方法,包括如下步骤:
S1.在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;具体步骤如下:
S11.在BMC或BIOS中设置第三flash;
S12.判断第一flash与第二flash是否同步刷新;
若是同步刷新,进入步骤S13;
若是异步刷新,进入步骤S14;
S13.将第一flash中固件或第二flash中固件存储到第三flash,再在第一flash与第二flash中刷新相同固件,进入步骤S2;
S14.在第一flash中刷新第一固件,在第二flash中刷新第二固件,并将第一固件与第二固件进行逻辑处理后,生成用于校验的第三固件,再将第三固件存储到第三flash;
S2.BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;具体步骤如下:
S21.当BMC启动调试或检测到BMC或BIOS的指定故障时,启动BMC或BIOS的固件版本调试;
S22.判断第一flash与第二flash是否同步刷新;
若是同步刷新,进入步骤S23;
若是异步刷新,进入步骤S26;
S23.BMC读取第一flash和第二flash中固件进行比对,判断是否一致;
若一致,进入步骤S25;
若不一致,进入步骤S24;
S24.对第一flash和第二flash中固件不一致的位置解析具体设置项后,生成日志;
S25.BMC读取第三flash中固件信息后写入第一flash,还原第一flash中原有固件,进入步骤S3;
S26.BMC读取第二flash中第二固件和第三flash中第三固件,还原出第一flash中原有固件,并将第一flash中固件与第一flash中原有固件进行比对,判断是否一致;
若一致,进入步骤S28;
若不一致,进入步骤S27;
S27.对第一flash中固件和第一flash中原有固件不一致的位置解析具体设置项后,生成日志;
S28.BMC将还原后的第一flash中原有固件写入第一flash中;
S3.分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题;具体步骤如下:
S31.通过第一flash进行启动,判断是否可以复现问题;
若是,进入步骤S34;
若否,进入步骤S32;
S32.记录日志,并切换第二flash进行启动,判断是否可用复现问题;
若是,进入步骤S34;
若否,进入步骤S33;
S33.记录日志,继续测试设定时间段后判断是否复现问题;
S34.暂停测试,对日志中记录的问题进行分析,结束。
实施例3:
如图3所示,本发明提供一种服务器flash系统校验及故障定位装置,包括:
备份flash设置模块1,用于在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;
第一flash固件刷新前后比对模块2,用于BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;
固件刷新问题复现模块3,用于分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题。
实施例4:
如图3所示,本发明提供一种服务器flash系统校验及故障定位装置,包括:
备份flash设置模块1,用于在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;
第一flash固件刷新前后比对模块2,用于BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;第一flash固件刷新前后比对模块2包括:
固件版本调试启动单元2.1,用于当BMC启动调试或检测到BMC或BIOS的指定故障时,启动BMC或BIOS的固件版本调试;
刷新模式第二判断单元2.2,用于判断第一flash与第二flash是否同步刷新;
第一flash与第二flash固件比对单元2.3,用于同步刷新时,BMC读取第一flash和第二flash中固件进行比对,判断是否一致;
第一异常点解析单元2.4,用于第一flash中固件与第二flash中固件比对不一致时,对第一flash和第二flash中固件不一致的位置解析具体设置项后,生成日志;
第一flash固件第一还原单元2.5,用于通过BMC读取第三flash中固件信息后写入第一flash,还原第一flash中原有固件;
原有固件与当前固件比对单元2.6,用于异步刷新时,BMC读取第二flash中第二固件和第三flash中第三固件,还原出第一flash中原有固件,并将第一flash中固件与第一flash中原有固件进行比对,判断是否一致;
第二异常点解析单元2.7,用于当第一flash中固件与第一flash中原有固件比对不一致时,对第一flash中固件和第一flash中原有固件不一致的位置解析具体设置项后,生成日志;
第一flash固件第二还原单元2.8,用于BMC将还原后的第一flash中原有固件写入第一flash中;
固件刷新问题复现模块3,用于分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题;固件刷新问题复现模块3包括:
第一复现问题判断单元3.1,用于通过第一flash进行启动,判断是否可以复现问题;
第二复现问题判断单元3.2,用于第一flash启动后无法复现问题时,记录日志,并切换第二flash进行启动,判断是否可用复现问题;
日志记录单元3.3,用于第二flash启动后无法复现问题时,记录日志,继续测试设定时间段后判断是否复现问题;
问题分析单元3.4,用于第一flash启动后或第二flash启动后,可以复现问题时,暂停测试,对日志中记录的问题进行分析。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (4)

1.一种服务器flash系统校验及故障定位方法,其特征在于,包括如下步骤:
S1.在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;步骤S1具体步骤如下:
S11.在BMC或BIOS中设置第三flash;
S12.判断第一flash与第二flash是否同步刷新;
若是同步刷新,进入步骤S13;
若是异步刷新,进入步骤S14;
S13.将第一flash中固件或第二flash中固件存储到第三flash,再在第一flash与第二flash中刷新相同固件,进入步骤S2;
S14.在第一flash中刷新第一固件,在第二flash中刷新第二固件,并将第一固件与第二固件进行逻辑处理后,生成用于校验的第三固件,再将第三固件存储到第三flash;
S2.BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;步骤S2具体步骤如下:
S21.当BMC启动调试或检测到BMC或BIOS的指定故障时,启动BMC或BIOS的固件版本调试;
S22.判断第一flash与第二flash是否同步刷新;
若是同步刷新,进入步骤S23;
若是异步刷新,进入步骤S26;
S23.BMC读取第一flash和第二flash中固件进行比对,判断是否一致;
若一致,进入步骤S25;
若不一致,进入步骤S24;
S24.对第一flash和第二flash 中固件不一致的位置解析具体设置项后,生成日志;
S25.BMC读取第三flash中固件信息后写入第一flash,还原第一flash中原有固件,进入步骤S3;
S26.BMC读取第二flash中第二固件和第三flash中第三固件,还原出第一flash中原有固件,并将第一flash中固件与第一flash中原有固件进行比对,判断是否一致;
若一致,进入步骤S28;
若不一致,进入步骤S27;
S27.对第一flash中固件和第一flash 中原有固件不一致的位置解析具体设置项后,生成日志;
S28.BMC将还原后的第一flash中原有固件写入第一flash中;
S3.分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题;步骤S3具体步骤如下:
S31.通过第一flash进行启动,判断是否可以复现问题;
若是,进入步骤S34;
若否,进入步骤S32;
S32.记录日志,并切换第二flash进行启动,判断是否可用复现问题;
若是,进入步骤S34;
若否,进入步骤S33;
S33.记录日志,继续测试设定时间段后判断是否复现问题;
S34.暂停测试,对日志中记录的问题进行分析,结束。
2.如权利要求1所述的服务器flash系统校验及故障定位方法,其特征在于,步骤S22中,若第一flash与第二flash同步刷新,进入步骤S23之前还包括如下步:
S2A.判断BMC检测到的报错信息,是否可以直接定位到BMC或BIOS的对应故障;
若是,进入步骤S2B;
若否,进入步骤S2C;
S2B.BMC直接针对固件版本进行调试,进入步骤S23;
S2C.BMC发出告警,并等待上传的手动抓取日志后,对固件版本进行调试,进入步骤S23。
3.如权利要求2所述的服务器flash系统校验及故障定位方法,其特征在于,第一flash与第二flash同步刷新对应BMC网页升级固件的应用场景;
第一flash与第二flash异步刷新对应片上flash工具或uTool工具升级固件的应用场景。
4.一种服务器flash系统校验及故障定位装置,其特征在于,包括:
备份flash设置模块(1),用于在BMC或BIOS中设置第三flash,并在对第一flash与第二flash进行固件刷新前,将第一flash中固件,或第二flash中固件,或将第一flash中固件和第二flash中固件进行逻辑处理后生成的新固件,刷新到第三flash;备份flash设置模块(1)包括:
第三flash设置单元(1.1),用于在BMC或BIOS中设置第三flash;
刷新模式第一判断单元(1.2),用于判断第一flash与第二flash是否同步刷新;
固件备份单元(1.3),用于同步刷新时,将第一flash中固件或第二flash中固件存储到第三flash,再在第一flash与第二flash中刷新相同固件;
校验固件备份单元(1.4),用于异步刷新时,在第一flash中刷新第一固件,在第二flash中刷新第二固件,并将第一固件与第二固件进行逻辑处理后,生成用于校验的第三固件,再将第三固件存储到第三flash;
第一flash固件刷新前后比对模块(2),用于BMC启动对BMC或BIOS中固件版本调试后,将第一flash中固件与第二flash中固件或与第一flash固件刷新前固件进行比对,判断二者是否一致,并在不一致时,对不一致的位置解析具体设置项后生成日志,再使用第一flash刷新前的固件对第一flash进行还原;第一flash固件刷新前后比对模块(2)包括:
固件版本调试启动单元(2.1),用于当BMC启动调试或检测到BMC或BIOS的指定故障时,启动BMC或BIOS的固件版本调试;
刷新模式第二判断单元(2.2),用于判断第一flash与第二flash是否同步刷新;
第一flash与第二flash固件比对单元(2.3),用于同步刷新时,BMC读取第一flash和第二flash中固件进行比对,判断是否一致;
第一异常点解析单元(2.4),用于第一flash中固件与第二flash中固件比对不一致时,对第一flash和第二flash 中固件不一致的位置解析具体设置项后,生成日志;
第一flash固件第一还原单元(2.5),用于通过BMC读取第三flash中固件信息后写入第一flash,还原第一flash中原有固件;
原有固件与当前固件比对单元(2.6),用于异步刷新时,BMC读取第二flash中第二固件和第三flash中第三固件,还原出第一flash中原有固件,并将第一flash中固件与第一flash中原有固件进行比对,判断是否一致;
第二异常点解析单元(2.7),用于当第一flash中固件与第一flash中原有固件比对不一致时,对第一flash中固件和第一flash 中原有固件不一致的位置解析具体设置项后,生成日志;
第一flash固件第二还原单元(2.8),用于BMC将还原后的第一flash中原有固件写入第一flash中;
固件刷新问题复现模块(3),用于分别使用第一flash和第二flash进行启动,判断是否可以复现问题,并在复现问题时,暂停测试,对日志中记录的问题进行分析,以及在不能复现问题时,记录日志后继续测试,等待设定时间段后再次判断是否复现问题;固件刷新问题复现模块(3)包括:
第一复现问题判断单元(3.1),用于通过第一flash进行启动,判断是否可以复现问题;
第二复现问题判断单元(3.2),用于第一flash启动后无法复现问题时,记录日志,并切换第二flash进行启动,判断是否可用复现问题;
日志记录单元(3.3),用于第二flash启动后无法复现问题时,记录日志,继续测试设定时间段后判断是否复现问题;
问题分析单元(3.4),用于第一flash启动后或第二flash启动后,可以复现问题时,暂停测试,对日志中记录的问题进行分析。
CN202111094944.6A 2021-09-17 2021-09-17 一种服务器flash系统校验及故障定位方法及装置 Active CN113868003B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111094944.6A CN113868003B (zh) 2021-09-17 2021-09-17 一种服务器flash系统校验及故障定位方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111094944.6A CN113868003B (zh) 2021-09-17 2021-09-17 一种服务器flash系统校验及故障定位方法及装置

Publications (2)

Publication Number Publication Date
CN113868003A CN113868003A (zh) 2021-12-31
CN113868003B true CN113868003B (zh) 2023-07-18

Family

ID=78996522

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111094944.6A Active CN113868003B (zh) 2021-09-17 2021-09-17 一种服务器flash系统校验及故障定位方法及装置

Country Status (1)

Country Link
CN (1) CN113868003B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775877A (zh) * 2016-12-22 2017-05-31 郑州云海信息技术有限公司 一种固件刷新方法及一种服务器
CN112948157A (zh) * 2021-01-29 2021-06-11 苏州浪潮智能科技有限公司 服务器故障定位方法、装置、系统及计算机可读存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106775877A (zh) * 2016-12-22 2017-05-31 郑州云海信息技术有限公司 一种固件刷新方法及一种服务器
CN112948157A (zh) * 2021-01-29 2021-06-11 苏州浪潮智能科技有限公司 服务器故障定位方法、装置、系统及计算机可读存储介质

Also Published As

Publication number Publication date
CN113868003A (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
WO2021169260A1 (zh) 一种系统板卡电源检测方法、装置、设备及存储介质
CN113064747B (zh) 一种服务器启动过程中的故障定位方法、系统及装置
CN106951345B (zh) 一种虚拟机磁盘数据的一致性测试方法及装置
CN110008129B (zh) 一种存储定时快照的可靠性测试方法、装置及设备
CN107818029B (zh) 一种云硬盘数据恢复一致性的自动化测试方法
CN104320308A (zh) 一种服务器异常检测的方法及装置
KR20210004656A (ko) 차량 기능 테스트 장치 및 그 제어 방법
CN108431781A (zh) 设备驱动器检测的错误的自诊断和自动诊断数据收集
CN114816022B (zh) 一种服务器电源异常监控方法、系统及存储介质
CN113672306B (zh) 服务器组件自检异常恢复方法、装置、系统及介质
CN113868003B (zh) 一种服务器flash系统校验及故障定位方法及装置
WO2019184612A1 (zh) 一种终端及电子设备
CN113851180A (zh) 检测ssd备电可靠性的系统、测试治具及ssd
CN116820932A (zh) 一种bmc故障诊断方法、装置、设备及介质
JP3986898B2 (ja) メモリ擬似故障注入装置
CN115422091A (zh) 一种固件调试方法及装置、电子设备、存储介质
CN114420194A (zh) 固态硬盘掉电保护功能的测试方法、装置及计算机设备
CN111460035A (zh) 一种数据库系统及其容灾方法
CN107766251B (zh) 加载image的检测方法、系统、设备及可读存储介质
CN111865719A (zh) 一种交换机故障注入自动化测试方法和装置
CN114281659B (zh) 一种基于固件版本复现服务器bug的方法及系统
CN116758973B (zh) 一种企业级固态硬盘意外掉电数据校验的测试方法
CN111352789B (zh) 一种用于服务器的交流循环测试方法、装置及存储介质
CN109783289B (zh) 用于测试服务器bmc web界面中内存信息稳定性的方法及系统
CN117116333B (zh) 一种企业级固态硬盘vpd信息的测试方法和测试装置

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