Server fault information control method and device, storage medium and electronic device

By implementing the fault information control method in the server, the problem of failure information cannot be reported in time caused by PCIe CE is solved, and the operation stability of the server is improved.

CN119201535BActive Publication Date: 2025-03-18INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411706757.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-26
Publication Date
2025-03-18
Estimated Expiration
2044-11-26

AI Technical Summary

Technical Problem

During the server's operation, the fault information cannot be reported in time due to the processing method of PCIe CE, resulting in low server operation stability.

Method used

By implementing a fault information control method in the server, query the accumulated number of fault description information in the register, detect the matching conditions between the number of candidates and the target number threshold, and determine whether to update and transmit the fault information based on the time threshold.

Benefits of technology

It realizes timely screening and transmission of server failure information, avoids the unstable server operation caused by excessive failure information, and improves the operation stability of the server.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119201535B_ABST
    Figure CN119201535B_ABST
Patent Text Reader

Abstract

An embodiment of the present application provides a method and device for controlling server fault information, a storage medium and an electronic device, wherein the method comprises: querying a register in a server to determine the number of candidate description information that has been accumulated at a current time, and extracting the initial time for storing the first description information in the candidate description information in the register; detecting whether a first matching condition is satisfied between the candidate number and a target number threshold, obtaining a first detection result, and detecting whether a second matching condition is satisfied between a target duration between the current time and the initial time and a duration threshold, obtaining a second detection result; based on the first detection result and the second detection result, filtering the target description information to be deleted from the candidate description information, and determining whether to transmit the updated description information stored in the register to a controller in the server; deleting the target description information, and transmitting the updated description information to the controller if it is determined that the updated description information is to be transmitted to the controller.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the computer field, and specifically, to a method and device for controlling server fault information, a storage medium, and an electronic device. Background Art

[0002] A bus port is deployed on the server, and the bus port can be used for, but is not limited to, connecting bus devices. For example, during the operation of the server, the bus port and the bus device may fail, such as CE.

[0003] Taking the deployment of PCIe ports on the server as an example, in the related technology, for the processing of PCIe CE, an AER register is set in the Intel CPU to identify the threshold of the number of CEs, and the error information is written into the AER register when the number of PCIe CEs reaches the threshold. In the AMD CPU, only the threshold for CE to report to the BMC and OS is set. This threshold is the threshold corresponding to all devices on the server, and is often large, and cannot be reported in time.

[0004] It is understandable that in the related technology, the processing method of PCIe CE will cause CE to accumulate continuously, which may cause CE accumulation to evolve into UCE (Uncorrectable Error), and it is impossible to distinguish which error information needs to be reported, and it is impossible to report it in time, resulting in low stability of server operation. Summary of the invention

[0005] The embodiments of the present application provide a method and device for controlling server fault information, a storage medium, and an electronic device, so as to at least solve the problem of low stability of server operation in the related art.

[0006] According to an embodiment of the present application, a method for controlling server fault information is provided, the method being applied to a target firmware in a server, the method comprising: querying a register in the server for a candidate number of candidate description information accumulated at a current time, and extracting an initial time for storing the first description information in the candidate description information in the register, wherein the initial time is earlier than the current time, and the register is used to store description information of a fault occurring at a bus port on the server and description information of a fault occurring at a bus device connected to the bus port; detecting whether a first matching condition is satisfied between the candidate number and a target number threshold, obtaining a first detection result, and detecting whether a target duration between the current time and the initial time and a duration threshold are satisfied. Whether the second matching condition is met, a second detection result is obtained, wherein the target quantity threshold is determined by the target firmware according to the degree of influence of the failures of the bus port and the bus device on the operating performance of the server; according to the first detection result and the second detection result, the target description information to be deleted is screened from the candidate description information, and it is determined whether to transmit the updated description information stored in the register to the controller in the server, wherein the updated description information is the description information stored in the register after the target description information, and the candidate description information includes the updated description information; the target description information is deleted, and when it is determined that the updated description information is to be transmitted to the controller, the updated description information is transmitted to the controller.

[0007] In an exemplary embodiment, the server includes an adjustment device, which is connected to the target firmware. Before detecting whether a first matching condition is satisfied between the candidate quantity and the target quantity threshold and obtaining a first detection result, the method further includes: receiving a target adjustment request, wherein the target adjustment request is used to request that the quantity threshold corresponding to the quantity of descriptive information stored in the register be adjusted to the target quantity threshold; and sending the target adjustment request to the adjustment device, wherein the adjustment device is used to execute the target adjustment request.

[0008] In an exemplary embodiment, the server includes a target interface, and receiving a target adjustment request includes: detecting a first editing operation performed on a first field on the target interface, and detecting a second editing operation performed on a second field on the target interface, wherein the first field is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server, and the second field is used to set a quantity threshold of the amount of descriptive information stored in the register corresponding to the degree of influence of the failure of the bus port and the bus device on the running performance of the server, the first editing operation is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server to a target influence degree, and the second editing operation is used to adjust the quantity threshold of the amount of descriptive information stored in the register corresponding to the target influence degree to the target quantity threshold; generating the target adjustment request corresponding to the first editing operation and the second editing operation, and transmitting the target adjustment request to the target firmware.

[0009] In an exemplary embodiment, after sending the target adjustment request to the adjustment device, the method further includes: defining a threshold identifier in a setting file, wherein the value of the threshold identifier is used to identify a quantity threshold corresponding to the quantity of descriptive information stored in the register; and calling an entry function to adjust the value of the threshold identifier to the target quantity threshold.

[0010] In an exemplary embodiment, the server includes a clock chip, which is connected to the target firmware, and the clock chip is used to record the current time of the server. Before the register in the query server has accumulated a candidate number of candidate description information at the current time, the method includes: detecting the target address of the clock chip, wherein the target address is used to extract the time recorded in the clock chip; by accessing the target address, extracting the time recorded in the clock chip as the current time.

[0011] In an exemplary embodiment, the candidate number of candidate description information accumulated by the register in the query server at the current time includes: when the bus port includes N bus ports, querying the candidate number of the candidate description information recorded by the register at the current time by executing the following steps, wherein the register is used to record the description information of the faults occurring in the N bus ports and the bus devices connected to each of the N bus ports, and N is a positive integer: detecting N groups of port description information of the N bus ports, wherein the i-th group of port description information in the N groups of port description information is used to indicate the i-th bus port in the N bus ports, and i is a positive integer less than or equal to N; calling the target interrupt to poll the number of description information corresponding to the N bus ports and the bus devices connected to each of the N bus ports that has been accumulated in the register at the current time according to the N groups of port description information, to obtain N numbers; performing a sum operation on the N numbers to obtain the candidate number.

[0012] In an exemplary embodiment, the detecting whether a first matching condition is satisfied between the candidate quantity and a target quantity threshold to obtain a first detection result includes: detecting whether the candidate quantity is greater than or equal to the target quantity threshold; in the case of detecting that the candidate quantity is greater than or equal to the target quantity threshold, determining that the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold; in the case of detecting that the candidate quantity is less than the target quantity threshold, determining that the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold.

[0013] In an exemplary embodiment, the detecting whether the target duration between the current time and the initial time satisfies a second matching condition with a duration threshold to obtain a second detection result includes: detecting whether the target duration is less than or equal to the duration threshold; in the case of detecting that the target duration is less than or equal to the duration threshold, determining that the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold; in the case of detecting that the target duration is greater than the duration threshold, determining that the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold.

[0014] In an exemplary embodiment, the target description information to be deleted is filtered from the candidate description information based on the first detection result and the second detection result, including: when the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold, filtering the description information of the target quantity threshold from the candidate description information as the target description information; when the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold, determining the candidate description information as the target description information.

[0015] In an exemplary embodiment, the determining whether to transmit the update description information stored in the register to the controller in the server includes: when the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold, determining to transmit the update description information to the controller; when the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold, determining not to transmit the update description information to the controller.

[0016] In an exemplary embodiment, the controller includes a data table, the server includes a recording function, and transmitting the update description information to the controller includes: calling the recording function to record the update description information one by one into the data table, and transmitting the update description information one by one to the controller.

[0017] According to another embodiment of the present application, a control device for server fault information is provided, the device is applied to target firmware in the server, the device comprises: a first processing module, used to query the register in the server for the candidate number of candidate description information accumulated at the current time, and extract the initial time for storing the first description information in the candidate description information in the register, wherein the initial time is earlier than the current time, and the register is used to store the description information of the fault occurring in the bus port on the server and the description information of the fault occurring in the bus device connected to the bus port; a first detection module, used to detect whether the candidate number satisfies a first matching condition with a target number threshold, obtain a first detection result, and detect whether the target duration between the current time and the initial time satisfies a duration threshold. whether the second matching condition is satisfied between the bus ports and the bus devices, and a second detection result is obtained, wherein the target quantity threshold is determined by the target firmware according to the degree of influence of the failures of the bus port and the bus device on the running performance of the server; a second processing module is used to filter the target description information to be deleted from the candidate description information according to the first detection result and the second detection result, and determine whether to transmit the updated description information stored in the register to the controller in the server, wherein the updated description information is the description information stored in the register after the target description information, and the candidate description information includes the updated description information; a third processing module is used to delete the target description information, and when it is determined that the updated description information is to be transmitted to the controller, transmit the updated description information to the controller.

[0018] According to another embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when run.

[0019] According to another embodiment of the present application, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0020] According to another embodiment of the present application, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0021] Through the present application, the bus port on the server and the bus device connected to the bus port may fail during operation. The target quantity threshold is determined by the target firmware according to the degree of influence of the failure of the bus port and the bus device connected to the bus port on the operation performance of the server. It can be understood that the quantity threshold is a quantity threshold set separately for the bus port and the bus device connected to the bus port; according to whether the first matching condition is satisfied between the candidate quantity and the target quantity threshold and whether the second matching condition is satisfied between the target duration between the current time and the initial time and the duration threshold, the description information to be deleted is automatically screened out from the description information stored in the register, and it is determined whether to transmit the updated description information stored in the register to the controller (for example, the description information that has not been screened as to be deleted); in the case of determining to transmit the updated description information to the controller, the updated description information is transmitted to the controller. In this way, when a large number of faults occur, the operation and maintenance personnel can promptly receive and process the description information of the faults that need to be paid attention to, and can promptly clean up the description information stored in the register to avoid excessive accumulation of description information in the register, which affects the operation of the server. Therefore, the problem of low stability of the operation of the server can be solved, and the effect of improving the stability of the operation of the server can be achieved. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 It is a hardware structure block diagram of a server device according to a method for controlling server fault information in an embodiment of the present application;

[0023] Figure 2 is a flow chart of a method for controlling server fault information according to an embodiment of the present application;

[0024] Figure 3 is a schematic diagram of an optional target interface according to an embodiment of the present application;

[0025] Figure 4 is a schematic diagram of threshold clearing and reporting of optional description information of server failure according to this embodiment;

[0026] Figure 5 This is an optional flow chart of 24-hour quantitative cleaning of PCIe CE errors according to an embodiment of the present application;

[0027] Figure 6 It is a structural block diagram of a device for controlling server fault information according to an embodiment of the present application. DETAILED DESCRIPTION

[0028] The embodiments of the present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0029] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0030] First, the terms involved in the embodiments of the present invention are explained as follows:

[0031] IPMI: Intelligent Platform Management Interface. IPMI can span different operating systems, firmware and hardware platforms. It can intelligently monitor, control and automatically report the operating status of a large number of servers to reduce server system costs.

[0032] BMC: Baseboard Management Controller, baseboard management controller.

[0033] BIOS: Basic Output and Input, basic input and output system, is a set of programs fixed on a ROM (Read-Only Memory) chip on the computer's motherboard. It stores the computer's most important basic input and output programs, self-test programs after power-on, and system self-starting programs. It has specific information for reading and writing system settings.

[0034] AMD: Advanced Micro Devices, Advanced Micro Devices.

[0035] Intel: Intel.

[0036] PCIe: PCI Express, a high-speed serial computer expansion bus standard, technically a fast Peripheral Component Interconnect Express, but often abbreviated as PCIe or PCI-E, is a standard type of connection for internal devices in a computer.

[0037] CE:Corrected Error, correctable error.

[0038] RAS: Reliability, Availability, and Serviceability. As a whole, RAS is to ensure that the entire system can run reliably for as long as possible without going offline, and has a sufficiently strong fault tolerance mechanism. This is an indispensable part of application environments such as large data centers, network centers such as stock exchanges, telecommunications computer rooms, and bank database centers.

[0039] APEI: Advanced Platform Error Interfaces, a unified and efficient interface for transmitting error information between hardware and upper-layer software.

[0040] RTC: Real-time Clock / Calendar Chip. A high-performance, low-power real-time clock circuit with RAM (Random Access Memory) that can count the year, month, day, weekday, hour, minute, and second, and has a leap year compensation function.

[0041] FW First: Firmware First, firmware processing is prioritized, that is, the errors generated are handled by BIOS first.

[0042] OS First: Operating System First, operating system processing is prioritized, that is, the errors generated are responded to and processed by the OS first.

[0043] Runtime protocol: Runtime protocol, in BIOS, refers to some protocols that can be called when the machine is in the OS stage.

[0044] CE error and UCE error: In the application scope of PCIe RAS, the most common ones are as follows: Error Detection, Error Correction, Error Reporting, Hot-plug Support, etc. Error Detection is error detection, which is generally performed quickly through parity check and cyclic redundancy check; Error Correction, ECC is a set of extra bits attached when data is stored or transmitted, used to detect and correct certain types of errors. When an error is detected, if the location of the error is known, the ECC information can be used to automatically fix the error without resending the data. Error Reporting, error reporting, the most common errors are UCE and CE. UCE is Uncorrectable Error, which is an error that cannot be automatically corrected by hardware. When an uncorrectable error is detected, the hardware will report it to the operating system or device driver through AER. UCE may be caused by hardware failure, severe signal attenuation, etc. For UCE, user intervention is usually required to resolve it, such as replacing the faulty component or restarting the system. CE is Correctable Error, which refers to errors that can be automatically corrected at the hardware level. When a correctable error is detected, the hardware will try to fix the error and report it to the operating system or device driver through AER. CE is usually caused by noise, transient interference, etc.

[0045] The method embodiments provided in the embodiments of the present application can be executed in a server device or a similar computing device. Taking running on a server device as an example, Figure 1 FIG. 1 is a hardware structure block diagram of a server device according to a method for controlling server fault information in an embodiment of the present application. Figure 1 As shown, the server device may include one or more ( Figure 1 Only one is shown in the figure) a processor 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data, wherein the above-mentioned server device may also include a transmission device 106 and an input / output device 108 for communication functions. It can be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the above server device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.

[0046] The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the control method of server fault information in the embodiment of the present application. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, to implement the above method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the server device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0047] The transmission device 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the server device. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, referred to as NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.

[0048] In this embodiment, a method for controlling server fault information is provided. Figure 2 is a flow chart of a method for controlling server fault information according to an embodiment of the present application, wherein the method is applied to a target firmware in a server, such as Figure 2 As shown, the process includes the following steps:

[0049] Step S202, querying a register in the server for the candidate number of candidate description information accumulated at the current time, and extracting an initial time for storing the first description information in the candidate description information in the register, wherein the initial time is earlier than the current time, and the register is used to store description information of a fault occurring in a bus port on the server and description information of a fault occurring in a bus device connected to the bus port;

[0050] Step S204, detecting whether the candidate quantity satisfies a first matching condition with a target quantity threshold, obtaining a first detection result, and detecting whether the target duration between the current time and the initial time satisfies a second matching condition with a duration threshold, obtaining a second detection result, wherein the target quantity threshold is determined by the target firmware according to the degree of influence of the failures of the bus port and the bus device on the operating performance of the server;

[0051] Step S206, according to the first detection result and the second detection result, the target description information to be deleted is screened from the candidate description information, and it is determined whether to transmit the updated description information stored in the register to the controller in the server, wherein the updated description information is the description information stored in the register after the target description information, and the candidate description information includes the updated description information;

[0052] Step S208: deleting the target description information, and if it is determined to transmit the update description information to the controller, transmitting the update description information to the controller.

[0053] Through the above steps, the bus port on the server and the bus device connected to the bus port may fail during operation. The target quantity threshold is determined by the target firmware according to the degree of influence of the failure of the bus port and the bus device connected to the bus port on the operation performance of the server. It can be understood that the quantity threshold is a quantity threshold set separately for the bus port and the bus device connected to the bus port; according to whether the first matching condition is satisfied between the candidate quantity and the target quantity threshold and whether the second matching condition is satisfied between the target duration between the current time and the initial time and the duration threshold, the description information to be deleted is automatically screened out from the description information stored in the register, and it is determined whether to transmit the updated description information stored in the register to the controller (for example, the description information that has not been screened as to be deleted); in the case of determining to transmit the updated description information to the controller, the updated description information is transmitted to the controller. In this way, when a large number of faults occur, the operation and maintenance personnel can promptly receive and process the description information of the faults that need to be paid attention to, and can promptly clean up the description information stored in the register to avoid excessive accumulation of description information in the register, which affects the operation of the server. Therefore, the problem of low stability of the operation of the server can be solved, and the effect of improving the stability of the operation of the server can be achieved.

[0054] In the technical solution provided in the above step S202, the bus port may include but is not limited to a port that complies with the target bus protocol, and the bus device may include but is not limited to the same bus protocol as the bus port. For example, the target bus protocol may include but is not limited to the PCIe protocol, I2C (Inter-Integrated Circuit, two-wire serial bus) protocol, etc. Taking the target bus protocol including the PCIe protocol as an example, the bus port may include but is not limited to the PCIe port, and the bus device may include but is not limited to the PCIe device, such as a network card.

[0055] Optionally, in this embodiment, the target firmware may be, but is not limited to, used to manage and control description information of faults occurring on the bus port on the server and description information of faults occurring on the bus device connected to the bus port, and the target firmware may be, but is not limited to, including a system management module, such as BIOS.

[0056] Optionally, in this embodiment, the fault description information may be, but is not limited to, used to indicate the type of fault occurring in the bus port and the bus device, the failed bus port, the failed bus device, and the error message that occurs, etc.

[0057] Optionally, in this embodiment, the description information of the fault occurring on the bus port and the fault occurring on the bus device connected to the bus port may include but is not limited to CE and UCE faults, and one fault may correspond to but is not limited to one description information. It may include but is not limited to taking the target bus protocol including the PCIe protocol, the bus port including the PCIe port, and the bus device including the PCIe device as an example, the description information of the fault occurring on the bus port and the fault occurring on the bus device connected to the bus port may include but is not limited to the description information of the CE fault occurring on the PCIe port and the PCIe device.

[0058] Optionally, in this embodiment, the initial time may be, but is not limited to, used to indicate the time when the first description information in the candidate description information is stored in the register, and the current time and the initial time may be, but are not limited to, indicated by year, month, day, hour, minute, second, etc. For example, the initial time may be, but is not limited to, indicated by a series of specific time parameters, such as stored and used in the form of T0D (day), T0H (hour), T0M (minute), T0S (second). The current time may be, but is not limited to, indicated by a series of specific time parameters, such as stored and used in the form of T2D (day), T2H (hour), T2M (minute), T2S (second).

[0059] In an exemplary embodiment, the server includes a clock chip, which is connected to the target firmware. The clock chip is used to record the current time of the server. The clock chip can be, but is not limited to, detected by the following methods before the number of candidate description information accumulated by the register in the query server at the current time: the target address of the clock chip is detected, wherein the target address is used to extract the time recorded in the clock chip; by accessing the target address, the time recorded in the clock chip is extracted as the current time.

[0060] Optionally, in this embodiment, the clock chip can be but is not limited to being used to record the current time of the server in real time, and the target address can be but is not limited to including an access address for accessing the current time of the server recorded in the clock chip, and can be but is not limited to accessing the target address through a register or storage unit inside the clock chip for storing and updating time data, extracting the current time of the server, and obtaining the current time.

[0061] Optionally, in this embodiment, the clock chip can, but is not limited to, continue to accurately track time when the system is powered off through a backup power supply to achieve real-time time recording.

[0062] Through the embodiment of the present application, the current time is read through the target address provided by the clock chip (RTC) to identify when the duration threshold is reached, thereby achieving periodic quantitative cleaning of the fault description information and improving the operation and maintenance efficiency of the server.

[0063] In an exemplary embodiment, the candidate number of candidate description information accumulated by a register in a server at the current time can be queried in the following manner, but is not limited to: when the bus port includes N bus ports, query the candidate number of candidate description information recorded by the register at the current time by executing the following steps, wherein the register is used to record the description information of faults occurring in the N bus ports and the bus devices connected to each of the N bus ports, and N is a positive integer: detect N groups of port description information of the N bus ports, wherein the i-th group of port description information in the N groups of port description information is used to indicate the i-th bus port in the N bus ports, and i is a positive integer less than or equal to N; call the target interrupt to poll the number of description information corresponding to the N bus ports and the bus devices connected to each of the N bus ports that has been accumulated in the register at the current time according to the N groups of port description information, and obtain N numbers; perform a sum operation on the N numbers to obtain the candidate number.

[0064] Optionally, in this embodiment, the port description information may include but is not limited to the identification of the bus port, for example, may include but is not limited to the BDF (Bus Number, Device Number and Function Number, referred to as BDF) of the bus port, etc.

[0065] Optionally, in this embodiment, the i-th number among N numbers can be but is not limited to 0, or the i-th number is greater than 0, wherein the i-th number is the number of descriptive information of faults occurring in the i-th bus port and the i-th bus device connected thereto stored in the register, and the N bus ports include the i-th bus port.

[0066] Optionally, in this embodiment, the target interrupt may be, but is not limited to, used to send an interrupt signal, such as an SMI interrupt, when a fault is detected (e.g., a PCIe CE fault). For example, when the BIOS detects a PCIe CE error in the AER register through the SMM protocol, it may, but is not limited to, trigger an SMI interrupt.

[0067] In the technical solution provided in the above step S204, the degree of influence can be calculated according to, but not limited to, the following formula (1):

[0068] *100% formula (1)

[0069] Wherein, R is the impact degree, S1 is the operating performance of the server when the bus port and the bus device connected to the bus port are not faulty, and S2 is the operating performance of the server after the bus port and the bus device connected to the bus port fail.

[0070] As an optional example, the operating performance of the server can be determined by, but is not limited to, the processing speed of the server, the accuracy of the data transmitted by the server, the speed at which the server responds to requests, and the like.

[0071] Optionally, in this embodiment, the quantitative thresholds corresponding to the degree of impact of the failure of the bus port and the bus device on the operating performance of the server may be different. For example, when the degree of impact of the failure of the bus port and the bus device on the operating performance of the server is 20%, the corresponding threshold is 200; when the degree of impact of the failure of the bus port and the bus device on the operating performance of the server is 40%, the corresponding threshold is 600.

[0072] Optionally, in this embodiment, the first detection result may include but is not limited to including that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, or that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold; the second detection result may include but is not limited to including that the second matching condition is satisfied between the target duration between the current time and the initial time and the duration threshold, or that the second matching condition is not satisfied between the target duration between the current time and the initial time and the duration threshold.

[0073] In an exemplary embodiment, the server includes an adjustment device, which is connected to the target firmware and can, but is not limited to, detect whether a first matching condition is satisfied between the candidate quantity and the target quantity threshold in the following manner before obtaining a first detection result: receiving a target adjustment request, wherein the target adjustment request is used to request that the quantity threshold corresponding to the quantity of descriptive information stored in the register be adjusted to the target quantity threshold; and sending the target adjustment request to the adjustment device, wherein the adjustment device is used to execute the target adjustment request.

[0074] Optionally, in this embodiment, a fault diagnosis driver may be deployed on the adjustment device but is not limited to, for example, a RAS fault diagnosis driver, and the adjustment device may execute the target adjustment request through the fault diagnosis driver but is not limited to.

[0075] Optionally, in this embodiment, the target adjustment request may be but is not limited to being used to request adjusting the quantity threshold corresponding to the quantity of descriptive information stored in the register from an initial quantity threshold to a target quantity threshold, for example, the initial quantity threshold may be greater than the target quantity threshold, or the initial quantity threshold may be less than the target quantity threshold.

[0076] In an exemplary embodiment, the server includes a target interface, and can receive a target adjustment request in the following manner, but is not limited to: detecting a first editing operation performed on a first field on the target interface, and detecting a second editing operation performed on a second field on the target interface, wherein the first field is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server, and the second field is used to set a quantity threshold of the amount of descriptive information stored in the register corresponding to the degree of influence of the failure of the bus port and the bus device on the running performance of the server, the first editing operation is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server to a target influence degree, and the second editing operation is used to adjust the quantity threshold of the amount of descriptive information stored in the register corresponding to the target influence degree to the target quantity threshold; generating the target adjustment request corresponding to the first editing operation and the second editing operation, and transmitting the target adjustment request to the target firmware.

[0077] Optionally, in this embodiment, there may be, but is not limited to, a corresponding relationship between the degree of influence and the quantity threshold. The user may, but is not limited to, edit the degree of influence and the quantity threshold corresponding to the degree of influence on the target interface. For example, by default, the quantity threshold corresponding to the degree of influence of 10% is 100, and the quantity threshold corresponding to the degree of influence of 20% is 300. The user may, but is not limited to, adjust the threshold corresponding to the degree of influence of 10% to 150.

[0078] Figure 3 is a schematic diagram of an optional target interface according to an embodiment of the present application, such as Figure 3 As shown, the user may, but is not limited to, perform a first editing operation on a first field (e.g., impact degree) on the target interface. For example, a list is displayed on the target interface, and the list displays the impact degrees that the user can select, such as 10%, 20%, 30%...100%, etc. The user may, but is not limited to, perform a second editing operation on a second field (e.g., quantity threshold) on the target interface. For example, a list is displayed on the target interface, and the list displays the quantity thresholds corresponding to the impact degrees that the user can select, such as 100, 300, 500, etc.

[0079] For example, the user can, but is not limited to, edit the impact degree to 10%, and edit the quantity threshold to 100 corresponding to 10%. In this case, after clicking the confirmation operation on the target interface, a target adjustment request corresponding to the first editing operation and the second editing operation is generated, and the target adjustment request is transmitted to the target firmware. It is understandable that the target adjustment request can be, but is not limited to, requesting to set the quantity threshold to 100 corresponding to the impact degree of 10%.

[0080] It should be noted that, since there is a corresponding relationship between the impact degree and the quantity threshold, when the impact degree is edited, the quantity threshold will be automatically adjusted according to this corresponding relationship to match the new impact degree setting quantity threshold; the target interface also supports users to perform independent editing operations on the first field (impact degree) and the second field (quantity threshold) according to specific needs. For example, the user can edit the impact degree on the target interface, and the final editing result is: select the impact degree of 10%, and the quantity threshold is the corresponding 100. The user can also make corresponding adjustments to the quantity threshold, for example, increase or decrease 100.

[0081] Through the embodiments of the present application, selectable PCIe CE over-limit thresholds are opened on the Setup (equivalent to the target interface), and the thresholds are set in a timely and quantitative manner according to customer needs. By allowing users to edit the impact degree and quantity thresholds, operation and maintenance personnel can adjust the thresholds according to historical error data and current system conditions, thereby avoiding unnecessary alarms and error handling, saving operation and maintenance time and costs, and improving the system's configuration flexibility and intelligence level.

[0082] In an exemplary embodiment, after sending the target adjustment request to the adjustment device, it is possible but not limited to the following methods: defining a threshold identifier in a setting file, wherein the value of the threshold identifier is used to identify a quantity threshold corresponding to the quantity of descriptive information stored in the register; and calling an entry function to adjust the value of the threshold identifier to the target quantity threshold.

[0083] Optionally, in this embodiment, the value of the threshold identifier may be, but is not limited to, the same as the quantity threshold corresponding to the quantity of description information stored in the register. When the quantity threshold is updated, the value of the threshold identifier may be updated by calling an entry function, but is not limited to, and it is understandable that the value of the threshold identifier may change dynamically.

[0084] In an exemplary embodiment, it is possible but not limited to detecting whether the first matching condition is satisfied between the candidate number and the target number threshold in the following manner to obtain a first detection result: detecting whether the candidate number is greater than or equal to the target number threshold; in the case where it is detected that the candidate number is greater than or equal to the target number threshold, determining that the first detection result is used to indicate that the first matching condition is satisfied between the candidate number and the target number threshold; in the case where it is detected that the candidate number is less than the target number threshold, determining that the first detection result is used to indicate that the first matching condition is not satisfied between the candidate number and the target number threshold.

[0085] Optionally, in this embodiment, the target quantity threshold may change dynamically in different detection cycles, and the duration of the detection cycle is equal to the duration threshold. For example, the target quantity threshold in the first detection cycle is smaller than the target quantity threshold in the second detection cycle. In this case, the same candidate quantity may satisfy the first matching condition with the target quantity threshold in the first detection cycle, but the same candidate quantity may not satisfy the first matching condition with the target quantity threshold in the second detection cycle.

[0086] In an exemplary embodiment, it is possible but not limited to detecting whether the target duration between the current time and the initial time and the duration threshold satisfy a second matching condition to obtain a second detection result by: detecting whether the target duration is less than or equal to the duration threshold; in the case where it is detected that the target duration is less than or equal to the duration threshold, determining that the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold; in the case where it is detected that the target duration is greater than the duration threshold, determining that the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold.

[0087] Optionally, in this embodiment, the current time and the time when the description information of the fault is first recorded can be standardized by, but not limited to, the following formula (2), that is, the duration between the current time and the initial time is converted into hours, and then the duration between the two times is calculated by subtracting them in hours.

[0088] Formula (2)

[0089] Among them, T represents the duration between the current time and the initial time, T2D represents the day part of the current time, T2H represents the hour part of the current time, T0D represents the day part of the time when the fault description information is first recorded, and T0H represents the hour part of the time when the fault description information is first recorded.

[0090] Optionally, in this embodiment, when calculating the duration between the current time and the initial time, the duration between the current time and the initial time may also be converted into minutes or seconds for calculation, but is not limited to.

[0091] By converting the current time and the time when the fault was first recorded to the same time scale, the duration between the current time and the time when the fault description information was first recorded can be accurately calculated, thus ensuring the timeliness and effectiveness of the management of the fault description information.

[0092] In the technical solution provided in the above step S206, the description information of the faults generated by the bus port and the bus device can be written into the register in real time but is not limited to it. At the current time, the number of updated description information stored in the register can be but is not limited to 0, or the number of updated description information stored in the register is greater than 0.

[0093] In an exemplary embodiment, the target description information to be deleted can be filtered from the candidate description information according to the first detection result and the second detection result in the following manner, but not limited to: when the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold, the description information of the target quantity threshold is filtered from the candidate description information as the target description information; when the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold, the candidate description information is determined as the target description information.

[0094] Optionally, in this embodiment, when the first detection result satisfies the first matching condition and the second detection result satisfies the second matching condition, it can be indicated that the amount of description information of the fault accumulated within the duration threshold has exceeded the target amount threshold. At this time, description information of the target amount threshold is screened out from the candidate description information as the target description information.

[0095] When the first detection result does not satisfy the first matching condition, and / or the second detection result does not satisfy the second matching condition, it may indicate that the amount of fault description information accumulated within the duration threshold has not yet reached the target number threshold. In this case, all candidate description information is determined as target description information.

[0096] In an exemplary embodiment, whether to transmit the update description information stored in the register to the controller in the server can be determined, but not limited to, in the following manner: when the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold, determine to transmit the update description information to the controller; when the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold, determine not to transmit the update description information to the controller.

[0097] Optionally, in this embodiment, it is possible but not limited to determining to transmit update description information to the controller when the first detection result is used to indicate that a first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that a second matching condition is satisfied between the target duration and the duration threshold. Figure 4FIG. 4 is a schematic diagram of threshold clearing and reporting of description information of an optional server failure according to this embodiment, such as Figure 4 As shown, it can be but not limited to taking the quantity threshold including 200, the candidate number of candidate description information recorded in the register at the current time as 400, the duration threshold being 24 hours, and the target firmware including BIOS as an example. At this time, the candidate number is greater than the quantity threshold, and the duration between the current time and the initial time is less than or equal to 24 hours. In this case, the BIOS will filter out description information 1 to description information 200 as the description information to be deleted, and determine to transmit description information 201 to description information 400 stored in the register to the controller. It can be understood that the updated description information includes description information 201 to description information 400.

[0098] In the technical solution provided in the above step S208, when it is determined that the updated description information is to be transmitted to the controller, a threshold amount of description information stored in the register is deleted, and the description information exceeding the threshold amount is immediately transmitted to the controller; when it is determined that the updated description information is not to be transmitted to the controller, all description information stored in the register is deleted.

[0099] For example, when the duration threshold is 24 hours and the quantity threshold is 200, if 300 error messages have accumulated in the register in the 18th hour, the 201st to 300th messages in the register will be immediately transmitted to the controller, and the 1st to 200th messages will be deleted.

[0100] In the related technology, the current server PCIe CE processing needs a CE filtering mechanism to allow customers to dynamically and selectively perceive CE reporting. Simply not allowing PCIe CE reporting will make customers unable to perceive the risks of some hardware links. The technical solution of this application can be but is not limited to server products of AMD platform X86 architecture (or other server products, this application does not limit this). With the help of RTC clock reading, the threshold is set regularly and quantitatively according to customer needs, avoiding the risk of large accumulation of PCIe CE and CE storm causing the machine to stop running, realizing dynamic processing of the number of PCIe CE within a certain period of time, greatly reducing the risk of CE storm, selectively letting the operation and maintenance personnel perceive the serious abnormalities of the machine in time, and reducing the ineffective investment of customer operation and maintenance personnel.

[0101] In an exemplary embodiment, the controller includes a data table, and the server includes a recording function, which can transmit the update description information to the controller in the following manner but is not limited to: calling the recording function to record the update description information one by one into the data table, and transmitting the update description information to the controller one by one.

[0102] Optionally, in this embodiment, the controller may, but is not limited to, detect faults occurring in bus ports and bus devices based on the received update description information, and promptly repair the corresponding faults. The controller may, but is not limited to, include BMC, OS, etc.

[0103] Optionally, in this embodiment, the method further includes: in the case where it is detected that the number of candidate description information stored in the register at the current time is greater than or equal to the number threshold, detecting whether the number of candidate description information stored in the register at the current time is greater than or equal to an upper limit value, wherein the upper limit value is greater than the target number threshold, and the upper limit value is a threshold value corresponding to the case where the degree of influence of the failure of the bus port and the bus device connected to the bus port on the running performance of the server is greater than or equal to the influence degree threshold;

[0104] When it is detected that the number of candidate description information is greater than or equal to the upper limit value, the description information stored in the register after the target description information is determined as updated description information, and the updated description information is transmitted to the controller, and the description information of the upper limit value is deleted.

[0105] Through the embodiments of the present application, when the number of candidate description information stored in the register at the current time is greater than or equal to the upper limit value, it can be indicated that a CE storm may have occurred at present, and a large number of faults have occurred in a very short time. In this case, all the description information stored in the register after the target description information can be directly transmitted to the controller, avoiding wasting a lot of time to detect multiple times whether reporting is required, and avoiding wasting a lot of time to screen the error information to be reported from the candidate description information. Instead, when a CE storm is detected, it is directly reported, which improves the efficiency of reporting error information to the controller and facilitates operation and maintenance personnel to quickly handle the CE storm.

[0106] In order to better understand the control process of the server fault information control method in the embodiment of the present application, the control process of the server fault information control method in the embodiment of the present application is explained and illustrated in combination with optional embodiments below, which can be applicable to but not limited to the embodiment of the present application.

[0107] In the case where the CPU can write PCIe CE into the AER register normally, the technical solution of the present application can be implemented but is not limited to executing the following steps: 1) BIOS (equivalent to the target firmware) needs to set a threshold for the number of PCIe CEs to indicate that when the CEs accumulate to the threshold within 24 hours, the PCIe CEs will be reported to the BMC and OS; 2) the current time is read according to the address of the clock chip (RTC) to indicate when the duration of 24 hours has been reached; 3) a mechanism for clearing PCIe CEs on time is executed according to the time obtained from the RTC.

[0108] Figure 5 is an optional 24-hour quantitative cleaning flow chart of PCIe CE errors according to an embodiment of the present application, such as Figure 5 As shown, the explanation may be but is not limited to taking the example that the target bus protocol includes the PCIe protocol, the bus port includes the PCIe port, the bus device includes the PCIe device, and the fault includes the CE fault.

[0109] When PCIe CE occurs, BIOS (equivalent to the target firmware) will call the Ras fault diagnosis driver (equivalent to the adjustment device) of the AMD platform to perform PCIe CE fault processing. At this time, we need to set a threshold on Setup (equivalent to the target interface) to identify how many CE errors can be cleared within 24 hours (equivalent to the duration threshold, which can also be 12 hours or 30 minutes, etc., and this application does not limit this). We need to first define the threshold identifier displayed on Setup in the sd file (equivalent to the setting file), and then initialize and assign the threshold at the PCIe CE processing entry function. In this process, we can determine how many CE errors need to be missed within 24 hours according to our needs, and associate the threshold with Setup to achieve the selectivity of the number of cleared errors.

[0110] Then the BIOS will call the SMI interrupt (equivalent to the target interrupt) to handle the CE error in the AER register. When the CE error handling method in the AER is FW First, that is, when the CE error is not triggered by the device driver layer, the BIOS will call the SMI interrupt through the SMM protocol to poll according to the BDF of the PCIe Root port to confirm whether the corresponding PCIe Port has an error. When the number of PCIe CE errors exceeds the threshold, the BIOS will pass the error to the OS through SMI and synchronize it to the BMC. When a PCIe CE error occurs, the BIOS will store it in a list through the Runtime protocol and count it, and then confirm how many PCIe CE errors are recorded in the AER register of the CPU under the current configuration. When BIOS starts to poll PCIe CE errors, it will record the current time as T0D, T0H, T0M, and T0S. Then, when the PCIe CE error exceeds the threshold, BIOS will read the current time according to the address of the clock chip, accurate to the day, hour, minute, and second of this month, and record it in T2D, T2H, T2M, and T2S. BIOS will calculate whether the time (T2D*24+T2H)-(T0D*24+T0H) exceeds 24 hours to confirm whether the CE error needs to be reported.

[0111] After polling all PCIe CEs, BIOS will trigger the CE logging function. If the value of (T2D*24+T2H)-(T0D*24+T0H) does not exceed 24 hours, BIOS will record it one by one into the BERT table (equivalent to a data table) of the OS according to the number of CE thresholds exceeded, and report it one by one to the BMC. The BMC will record it in the log system, and then subtract the threshold number of PCIe CE errors from the AER register, and the remaining PCIe CE will enter the next round of accumulation; if the value of (T2D*24+T2H)-(T0D*24+T0H) exceeds 24 hours, BIOS will not report CE errors to the OS and BMC, and then clear the PCIe CE errors in the AER and start the next round of CE accumulation. At the same time, after this 24-hour cycle count is completed, BIOS will assign T2D, T2H, T2M, and T2S to T0D, T0H, T0M, and T0S, and start a new cycle count.

[0112] This application mainly optimizes the existing PCIe CE error processing mechanism, and uses the RTC clock (equivalent to the clock chip) to read the time confirmation time interval to regularly and quantitatively clear PCIe CE errors, which brings the following three benefits:

[0113] (1) When a large number of PCIe CE errors occur on the machine, they can be reported promptly within a certain period of time, allowing operation and maintenance personnel to perceive them and troubleshoot the causes of the errors in a timely manner, greatly reducing the risk of CE storms;

[0114] (2) A small amount of PCIe CE is a normal phenomenon. Not all PCIe CE need to be perceived by the customer. This technical solution enables customers to selectively perceive more serious errors and promptly check whether the machine link is abnormal. This can save a lot of investment by operation and maintenance personnel and reduce the risk of serious abnormalities in the machine.

[0115] (3) The introduction of this technical solution allows customers to selectively perceive PCIe CE error reporting within a day and dynamically and intelligently regulate PCIe CE reporting, which is of great help in improving the competitiveness of the machine.

[0116] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0117] In this embodiment, a control device for server fault information is also provided, which is used to implement the above embodiments and preferred implementation modes, and will not be repeated here. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0118] Figure 6 is a structural block diagram of a device for controlling server fault information according to an embodiment of the present application, such as Figure 6 As shown, the device is applied to the target firmware in the server, and the device includes:

[0119] The first processing module 602 is used to query the number of candidate description information accumulated by the register in the server at the current time, and extract the initial time of storing the first description information in the candidate description information in the register, wherein the initial time is earlier than the current time, and the register is used to store the description information of the fault occurring in the bus port on the server and the description information of the fault occurring in the bus device connected to the bus port;

[0120] The first detection module 604 is used to detect whether the candidate quantity and the target quantity threshold satisfy a first matching condition to obtain a first detection result, and detect whether the target duration between the current time and the initial time and the duration threshold satisfy a second matching condition to obtain a second detection result, wherein the target quantity threshold is determined by the target firmware according to the degree of influence of the failures of the bus port and the bus device on the operating performance of the server;

[0121] A second processing module 606 is used to filter the target description information to be deleted from the candidate description information according to the first detection result and the second detection result, and determine whether to transmit the updated description information stored in the register to the controller in the server, wherein the updated description information is the description information stored in the register after the target description information, and the candidate description information includes the updated description information;

[0122] The third processing module 608 is configured to delete the target description information, and if it is determined that the update description information is to be transmitted to the controller, transmit the update description information to the controller.

[0123] Through the above device, the bus port on the server and the bus device connected to the bus port may fail during operation. The target quantity threshold is determined by the target firmware according to the degree of influence of the failure of the bus port and the bus device connected to the bus port on the operation performance of the server. It can be understood that the quantity threshold is a quantity threshold set separately for the bus port and the bus device connected to the bus port; according to whether the candidate quantity meets the first matching condition with the target quantity threshold and whether the target duration between the current time and the initial time meets the duration threshold, the description information to be deleted is automatically screened out from the description information stored in the register, and it is determined whether to transmit the updated description information stored in the register (for example, the description information that has not been screened as to be deleted) to the controller; in the case of determining to transmit the updated description information to the controller, the updated description information is transmitted to the controller. In this way, when a large number of faults occur, the operation and maintenance personnel can promptly receive and process the description information of the faults that need to be paid attention to, and can promptly clean up the description information stored in the register to avoid excessive accumulation of description information in the register, which affects the operation of the server. Therefore, the problem of low stability of the operation of the server can be solved, and the effect of improving the stability of the operation of the server can be achieved.

[0124] In an exemplary embodiment, the server includes an adjustment device, the adjustment device is connected to the target firmware, and the apparatus further includes:

[0125] a receiving module, configured to receive a target adjustment request before the first detection result is obtained by detecting whether the first matching condition is satisfied between the candidate quantity and the target quantity threshold, wherein the target adjustment request is used to request that the quantity threshold corresponding to the quantity of description information stored in the register be adjusted to the target quantity threshold;

[0126] A sending module is used to send the target adjustment request to the adjustment device, wherein the adjustment device is used to execute the target adjustment request.

[0127] In an exemplary embodiment, the server includes a target interface, and the receiving module includes:

[0128] a first detection unit, configured to detect a first editing operation performed on a first field on the target interface, and to detect a second editing operation performed on a second field on the target interface, wherein the first field is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server, and the second field is used to set a quantity threshold of the amount of descriptive information stored in the register corresponding to the degree of influence of the failure of the bus port and the bus device on the running performance of the server, the first editing operation is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server to a target influence degree, and the second editing operation is used to adjust the quantity threshold of the amount of descriptive information stored in the register corresponding to the target influence degree to the target quantity threshold;

[0129] The first processing unit is configured to generate the target adjustment request corresponding to the first editing operation and the second editing operation, and transmit the target adjustment request to the target firmware.

[0130] In an exemplary embodiment, the apparatus further comprises:

[0131] A definition module, configured to define a threshold identifier in a setting file after sending the target adjustment request to the adjustment device, wherein a value of the threshold identifier is used to identify a quantity threshold corresponding to the quantity of the description information stored in the register;

[0132] The adjustment module is used to call the entry function to adjust the value of the threshold identifier to the target quantity threshold.

[0133] In an exemplary embodiment, the server includes a clock chip, the clock chip is connected to the target firmware, and the clock chip is used to record the current time of the server. The device includes:

[0134] A second detection module is used to detect the target address of the clock chip before the register in the query server has accumulated the candidate number of candidate description information at the current time, wherein the target address is used to extract the time recorded in the clock chip;

[0135] The extraction module is used to access the target address and extract the time recorded in the clock chip as the current time.

[0136] In an exemplary embodiment, the first processing module includes:

[0137] In the case where the bus port includes N bus ports, the number of candidates of the candidate description information recorded by the register at the current time is queried by performing the following steps, wherein the register is used to record description information of faults occurring in the N bus ports and bus devices connected to each of the N bus ports, and N is a positive integer:

[0138] A second detection unit, configured to detect N groups of port description information of the N bus ports, wherein the i-th group of port description information in the N groups of port description information is used to indicate the i-th bus port in the N bus ports, and i is a positive integer less than or equal to N;

[0139] A calling unit, configured to call a target interrupt to poll the register for the number of description information corresponding to the N bus ports and the bus devices connected to each bus device in the N bus ports accumulated at the current time according to the N groups of port description information, to obtain N numbers;

[0140] An execution unit is used to perform a sum operation on the N quantities to obtain the candidate quantity.

[0141] In an exemplary embodiment, the first detection module includes:

[0142] A third detection unit, used to detect whether the candidate quantity is greater than or equal to the target quantity threshold;

[0143] A first determination unit is used to determine, when it is detected that the candidate number is greater than or equal to the target number threshold, that the first detection result is used to indicate that the first matching condition is satisfied between the candidate number and the target number threshold; and when it is detected that the candidate number is less than the target number threshold, determine that the first detection result is used to indicate that the first matching condition is not satisfied between the candidate number and the target number threshold.

[0144] In an exemplary embodiment, the first detection module further includes:

[0145] A fourth detection unit, configured to detect whether the target duration is less than or equal to the duration threshold;

[0146] A second determination unit is used to, when it is detected that the target duration is less than or equal to the duration threshold, determine that the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold; and, when it is detected that the target duration is greater than the duration threshold, determine that the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold.

[0147] In an exemplary embodiment, the second processing module includes:

[0148] a screening unit, configured to screen description information of the target quantity threshold from the candidate description information as the target description information when the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and when the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold;

[0149] A third determination unit is used to determine the candidate description information as the target description information when the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or when the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold.

[0150] In an exemplary embodiment, the second processing module further includes:

[0151] a fourth determining unit, configured to determine to transmit the update description information to the controller when the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold;

[0152] A fifth determination unit is used to determine not to transmit the update description information to the controller when the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or when the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold.

[0153] In an exemplary embodiment, the controller includes a data table, the server includes a recording function, and the third processing module includes:

[0154] The second processing unit is used to call the recording function to record the update description information one by one into the data table, and transmit the update description information to the controller one by one.

[0155] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.

[0156] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.

[0157] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.

[0158] An embodiment of the present application further provides an electronic device, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0159] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.

[0160] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any one of the above method embodiments are implemented.

[0161] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0162] An embodiment of the present application also provides a computer program, which includes computer instructions stored in a computer-readable storage medium; a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the steps in any one of the above method embodiments.

[0163] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail herein.

[0164] Obviously, those skilled in the art should understand that the above modules or steps of the present application can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present application is not limited to any specific combination of hardware and software.

[0165] The above description is only the preferred embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the principles of the present application shall be included in the protection scope of the present application.

Claims

1. A method for controlling server fault information, characterized in that: Applied to target firmware in a server, the method comprises: Querying a register in a server for the number of candidate description information accumulated at the current time, and extracting an initial time for storing the first description information in the candidate description information in the register, wherein the initial time is earlier than the current time, and the register is used to store description information of a fault occurring in a bus port on the server and description information of a fault occurring in a bus device connected to the bus port; Detecting whether a first matching condition is satisfied between the candidate quantity and a target quantity threshold value to obtain a first detection result, and detecting whether a second matching condition is satisfied between a target duration between the current time and the initial time and a duration threshold value to obtain a second detection result, wherein the target quantity threshold value is determined by the target firmware according to the degree of influence of the failures of the bus port and the bus device on the operating performance of the server; According to the first detection result and the second detection result, the target description information to be deleted is screened from the candidate description information, and it is determined whether to transmit the updated description information stored in the register to the controller in the server, wherein the updated description information is the description information stored in the register after the target description information, and the candidate description information includes the updated description information; The target description information is deleted, and when it is determined that the update description information is to be transmitted to the controller, the update description information is transmitted to the controller.

2. The method according to claim 1, characterized in that The server includes an adjustment device, the adjustment device is connected to the target firmware, and before detecting whether a first matching condition is satisfied between the candidate quantity and the target quantity threshold and obtaining a first detection result, the method further includes: receiving a target adjustment request, wherein the target adjustment request is used to request that a quantity threshold corresponding to the quantity of description information stored in the register be adjusted to the target quantity threshold; The target adjustment request is sent to the adjustment device, wherein the adjustment device is configured to execute the target adjustment request.

3. The method according to claim 2, characterized in that The server includes a target interface, and the receiving a target adjustment request includes: Detecting a first editing operation performed on a first field on the target interface, and detecting a second editing operation performed on a second field on the target interface, wherein the first field is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server, and the second field is used to set a quantity threshold of the amount of descriptive information stored in the register corresponding to the degree of influence of the failure of the bus port and the bus device on the running performance of the server, the first editing operation is used to set the degree of influence of the failure of the bus port and the bus device on the running performance of the server to a target influence degree, and the second editing operation is used to adjust the quantity threshold of the amount of descriptive information stored in the register corresponding to the target influence degree to the target quantity threshold; The target adjustment request corresponding to the first editing operation and the second editing operation is generated, and the target adjustment request is transmitted to the target firmware.

4. The method according to claim 2, characterized in that: After sending the target adjustment request to the adjustment device, the method further includes: A threshold identifier is defined in a setting file, wherein a value of the threshold identifier is used to identify a quantity threshold corresponding to the quantity of description information stored in the register; The entry function is called to adjust the value of the threshold identifier to the target quantity threshold.

5. The method according to claim 1, characterized in that The server includes a clock chip, the clock chip is connected to the target firmware, and the clock chip is used to record the current time of the server. Before the register in the query server has accumulated the number of candidates for the candidate description information at the current time, the method includes: Detecting a target address of the clock chip, wherein the target address is used to extract the time recorded in the clock chip; By accessing the target address, the time recorded in the clock chip is extracted as the current time.

6. The method according to claim 1, characterized in that The number of candidates for candidate description information accumulated by the register in the query server at the current time includes: In the case where the bus port includes N bus ports, the number of candidates of the candidate description information recorded by the register at the current time is queried by performing the following steps, wherein the register is used to record description information of faults occurring in the N bus ports and bus devices connected to each of the N bus ports, and N is a positive integer: Detecting N groups of port description information of the N bus ports, wherein the i-th group of port description information in the N groups of port description information is used to indicate the i-th bus port in the N bus ports, and i is a positive integer less than or equal to N; Calling the target interrupt to poll the register according to the N groups of port description information for the number of description information corresponding to the N bus ports and the bus devices connected to each bus device in the N bus ports accumulated at the current time, to obtain N numbers; Perform a sum operation on the N quantities to obtain the candidate quantity.

7. The method according to claim 1, characterized in that The detecting whether the candidate quantity and the target quantity threshold satisfy a first matching condition to obtain a first detection result includes: Detecting whether the candidate quantity is greater than or equal to the target quantity threshold; In the case where it is detected that the candidate number is greater than or equal to the target number threshold, it is determined that the first detection result is used to indicate that the first matching condition is satisfied between the candidate number and the target number threshold; in the case where it is detected that the candidate number is less than the target number threshold, it is determined that the first detection result is used to indicate that the first matching condition is not satisfied between the candidate number and the target number threshold.

8. The method according to claim 1, characterized in that The detecting whether the target duration between the current time and the initial time satisfies a second matching condition with a duration threshold, and obtaining a second detection result includes: Detecting whether the target duration is less than or equal to the duration threshold; When it is detected that the target duration is less than or equal to the duration threshold, the second detection result is determined to indicate that the second matching condition is satisfied between the target duration and the duration threshold; when it is detected that the target duration is greater than the duration threshold, the second detection result is determined to indicate that the second matching condition is not satisfied between the target duration and the duration threshold.

9. The method according to claim 1, characterized in that: The step of filtering the target description information to be deleted from the candidate description information according to the first detection result and the second detection result includes: When the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold, filtering description information of the target quantity threshold from the candidate description information as the target description information; When the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold, the candidate description information is determined as the target description information.

10. The method according to claim 1, characterized in that The determining whether to transmit the update description information stored in the register to the controller in the server includes: In a case where the first detection result is used to indicate that the first matching condition is satisfied between the candidate quantity and the target quantity threshold, and the second detection result is used to indicate that the second matching condition is satisfied between the target duration and the duration threshold, determining to transmit the update description information to the controller; When the first detection result is used to indicate that the first matching condition is not satisfied between the candidate quantity and the target quantity threshold, and / or the second detection result is used to indicate that the second matching condition is not satisfied between the target duration and the duration threshold, it is determined not to transmit the update description information to the controller.

11. The method according to claim 1, characterized in that: The controller includes a data table, the server includes a recording function, and the transmitting the update description information to the controller includes: The recording function is called to record the update description information one by one into the data table, and the update description information is transmitted to the controller one by one.

12. A control device for server fault information, characterized in that: The device is applied to target firmware in a server, and the device comprises: A first processing module is used to query the number of candidate description information accumulated by a register in the server at the current time, and extract the initial time for storing the first description information in the candidate description information in the register, wherein the initial time is earlier than the current time, and the register is used to store the description information of the fault occurring in the bus port on the server and the description information of the fault occurring in the bus device connected to the bus port; a first detection module, configured to detect whether a first matching condition is satisfied between the candidate quantity and a target quantity threshold, and obtain a first detection result, and to detect whether a second matching condition is satisfied between a target duration between the current time and the initial time and a duration threshold, and obtain a second detection result, wherein the target quantity threshold is determined by the target firmware according to the degree of influence of the failures of the bus port and the bus device on the running performance of the server; a second processing module, configured to filter the target description information to be deleted from the candidate description information according to the first detection result and the second detection result, and determine whether to transmit the updated description information stored in the register to the controller in the server, wherein the updated description information is the description information stored in the register after the target description information, and the candidate description information includes the updated description information; The third processing module is configured to delete the target description information and, if it is determined that the update description information is to be transmitted to the controller, transmit the update description information to the controller.

13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program implements the steps of the method described in any one of claims 1 to 11 when executed by a processor.

14. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method described in any one of claims 1 to 11 are implemented.

15. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method described in any one of claims 1 to 11 are implemented.

Citation Information

Patent Citations

  • Fault information processing method and device, storage medium and electronic device

    CN115941438A

  • Method and device for identifying faults of expansion bus equipment of high-speed serial computer

    CN115964218A