Memory fault processing method and device, equipment and storage medium
By introducing memory funnel and threshold functions in the BIOS, the reporting of memory failures is managed, and the problem of frequent reporting of server memory failures is solved, and the effect of reducing the frequency of fault reporting and improving server stability is achieved.
Patent Information
- Application Number
- CN202411639045.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2025-03-18
AI Technical Summary
Server memory failures, especially correctable errors (CE errors), frequent reporting will cause server downtime, and it is difficult for the existing technology to effectively manage and reduce the frequency of reporting such failures.
The memory funnel and memory threshold functions are introduced in the basic input and output system (BIOS). Through the pre-set threshold switch function and memory funnel function, it is possible to determine whether a memory failure is reported. Specific steps include detecting memory failures, judging the function status of the threshold switch, configuring the funnel time and quantity information, generating the number of errors to be missed, and deciding whether to report the fault based on the threshold and time interval.
It effectively reduces the number of times memory CE errors reported, reduces the probability of server restart or downtime, and improves the stability and reliability of the server.
Smart Images

Figure CN119645697A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of memory technology, and in particular to a memory fault processing method, device, equipment and storage medium. Background Art
[0002] With the rapid development of Internet business, the availability of infrastructure has received more and more attention from the industry. However, hardware failure has always been a common phenomenon, and the losses caused by hardware failure are often huge. Among the various components of the server, memory failure is the second most common type of hardware failure after hard disk failure. In addition, the number of server memories is large, and the most serious consequence of memory failure is that it will directly cause the system to crash, which is unacceptable to the upper-level business. At this time, memory fault detection and reporting is particularly important, but this is a reporting function after the memory error occurs.
[0003] In the related art, in order to solve the above problem, when a memory failure occurs, the BIOS will obtain its location and error type and report it. However, memory CE errors are correctable errors and generally do not cause problems if the number is small. Therefore, frequent reporting will cause server downtime. Summary of the invention
[0004] The purpose of the embodiments of the present invention is to provide a memory fault processing method, device, equipment and storage medium. The specific technical solution is as follows:
[0005] In a first aspect of the present invention, a method for a basic input and output system is provided, the method comprising:
[0006] In the case of detecting that a memory fault exists in the memory, determining whether a preset threshold switch function is in an on state based on a memory threshold, wherein the memory fault includes a correctable error;
[0007] If the preset threshold switch function is in an on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function.
[0008] Optionally, the threshold switch function is pre-set in the basic input and output system, and before the step of determining whether the pre-set threshold switch function is in an on state based on the memory threshold, the method includes:
[0009] pre-configuring a memory threshold in the threshold switch function of the basic input and output system, wherein the memory threshold is set and revised based on user requirements;
[0010] The determining whether the preset threshold switch function is in the on state based on the memory threshold comprises:
[0011] In the case where it is detected that the memory threshold is the first target value, determining that the preset threshold switch function is in an off state;
[0012] In the case where it is detected that the memory threshold is the second target value, determining that the preset threshold switch function is in an on state;
[0013] The first target value is used to indicate that the threshold switch function is in an off state, and the second target value is used to indicate that the threshold switch function is in an on state.
[0014] After the step of determining whether the preset threshold switch function is in an on state based on the memory threshold, the method further includes:
[0015] The memory funnel and threshold functions are preconfigured in the basic input and output system;
[0016] Pre-configuring the funnel time information and funnel quantity information in the memory funnel and threshold function of the basic input and output system;
[0017] The leaky bucket time information is used to indicate a preset period of missed memory errors, and the leaky bucket quantity information is used to indicate the number of corresponding missed memory errors within the preset period.
[0018] Optionally, reporting the memory fault to the baseboard management controller based on a preset memory funnel and threshold function includes:
[0019] Obtain the first time information corresponding to the memory failure and the time interval information;
[0020] Generate the number of memory errors to be missed within the time interval according to the time interval information, the leaky bucket time information and the leaky bucket number information;
[0021] Determine whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed;
[0022] If not, determining whether the memory threshold is greater than the number of memory errors to be missed;
[0023] If so, the memory failure is reported to the baseboard management controller.
[0024] Optionally, after the step of determining whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed, the method includes:
[0025] If so, reset the target number corresponding to the current memory failure to an initial value.
[0026] Optionally, the obtaining of the first time information corresponding to the memory failure and the time interval information includes:
[0027] Obtaining first time information corresponding to the memory failure and second time information corresponding to the last memory failure;
[0028] Time interval information is generated based on the first time information and the second time information.
[0029] Optionally, after the step of determining whether the memory threshold is greater than the number of memory errors to be missed, the method further includes:
[0030] If not, determining whether the time interval information is greater than a preset time interval;
[0031] If so, reset the target number corresponding to the current memory failure to an initial value.
[0032] Optionally, after the step of determining whether the time interval information is greater than a preset time interval, the method includes:
[0033] If not, continue to accumulate the target number corresponding to the current memory fault.
[0034] In a second aspect of the present invention, a memory fault processing device is provided, the device comprising:
[0035] A determination module, configured to determine whether a preset threshold switch function is in an on state based on a memory threshold when a memory fault is detected in the memory, wherein the memory fault includes a correctable error;
[0036] The fault module is used to report the memory fault to the baseboard management controller based on the preset memory funnel and threshold function if the preset threshold switch function is in the on state.
[0037] Optionally, the threshold switch function is pre-set in the basic input and output system, and the device further includes:
[0038] A first module, configured to pre-configure a memory threshold in the threshold switch function of the basic input and output system, wherein the memory threshold is set and revised based on user requirements;
[0039] Wherein, the determination module includes:
[0040] A first determination submodule is used to determine that a preset threshold switch function is in an off state when it is detected that the memory threshold is a first target value;
[0041] A second determination submodule is used to determine that a preset threshold switch function is in an on state when it is detected that the memory threshold is a second target value;
[0042] The first target value is used to indicate that the threshold switch function is in an off state, and the second target value is used to indicate that the threshold switch function is in an on state;
[0043] The memory funnel and threshold function are pre-configured in the basic input and output system; the device also includes:
[0044] A second module is used to pre-configure the funnel time information and the funnel quantity information in the memory funnel and the threshold function of the basic input and output system;
[0045] The leaky bucket time information is used to indicate a preset period of missed memory errors, and the leaky bucket quantity information is used to indicate the number of corresponding missed memory errors within the preset period.
[0046] Optionally, the fault module includes:
[0047] A first fault submodule, used to obtain first time information corresponding to a memory fault and time interval information;
[0048] A second fault submodule, configured to generate a number of memory errors to be missed within the time interval according to the time interval information, the funnel time information and the funnel quantity information;
[0049] A third fault submodule, used to determine whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed;
[0050] a fourth fault submodule, for determining, if not, whether the memory threshold is greater than the number of memory errors to be missed;
[0051] The fifth fault submodule is configured to report the memory fault to a baseboard management controller if yes.
[0052] Optionally, the fault module further includes:
[0053] The sixth fault submodule is used to reset the target number corresponding to the current memory fault to an initial value if yes.
[0054] Optionally, the first fault submodule includes:
[0055] A first fault unit, used to obtain first time information corresponding to a memory fault and second time information corresponding to a previous memory fault;
[0056] The second fault unit is configured to generate time interval information based on the first time information and the second time information.
[0057] Optionally, the fault module includes:
[0058] a seventh fault submodule, for determining, if not, whether the time interval information is greater than a preset time interval;
[0059] An eighth fault submodule is used to reset the target number corresponding to the current memory fault to an initial value if yes.
[0060] Optionally, the device comprises:
[0061] The ninth fault submodule is used to, if not, continue to accumulate the target number corresponding to the current memory fault.
[0062] In a third aspect of the implementation of the present invention, there is also provided a communication device, comprising: a transceiver, a memory, a processor, and a program stored in the memory and executable on the processor;
[0063] The processor is used to read the program in the memory to implement the memory fault processing method as described in any one of the first aspects.
[0064] In a fourth aspect of the implementation of the present invention, a computer-readable storage medium is further provided, wherein instructions are stored in the computer-readable storage medium, and when the computer-readable storage medium is executed on a computer, the computer implements the memory fault handling method as described in any one of the first aspects.
[0065] In a fifth aspect of the implementation of the present invention, a computer program product is also provided, including a computer program / instruction, which, when executed by a processor, implements the memory fault handling method as described in any one of the first aspects.
[0066] The memory fault processing method provided by the embodiment of the present invention is applied to the basic input and output system. When a memory fault is detected in the memory, it is determined whether the preset threshold switch function is in the on state based on the memory threshold, and the memory fault includes a correctable error; if the preset threshold switch function is in the on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function. In the embodiment of the present invention, the number of memory CE error reports can be well reduced through the memory funnel and memory threshold function, thereby reducing the probability of server restart or downtime, that is, through the role and implementation method of the memory CE error funnel function, and the role and implementation method of the memory CE error threshold, the two are combined together to achieve the reduction of the probability of server restart and downtime caused by memory CE errors. BRIEF DESCRIPTION OF THE DRAWINGS
[0067] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present application. Also, the same reference symbols are used throughout the accompanying drawings to represent the same components. In the accompanying drawings:
[0068] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art are briefly introduced below.
[0069] Figure 1 A flowchart of a method for handling memory failures provided by an embodiment of the present invention;
[0070] Figure 2 is a flowchart of another method for handling memory failures provided by an embodiment of the present invention;
[0071] Figure 3 is a device block diagram of a memory fault processing device provided by an embodiment of the present invention;
[0072] Figure 4 It is a schematic diagram of a communication device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0073] To make the purpose, technical scheme and advantages of the embodiments of the present invention clearer, the embodiments of the present invention will be described in detail below in conjunction with the accompanying drawings. However, it will be appreciated by those skilled in the art that in the embodiments of the present invention, many technical details are proposed in order to enable the reader to better understand the present application. However, even without these technical details and various changes and modifications based on the following embodiments, the technical scheme claimed in the present application can be implemented. The division of the following embodiments is for the convenience of description, and should not constitute any limitation on the specific implementation of the present invention. The various embodiments can be combined and referenced with each other without contradiction.
[0074] It should be noted that in an embodiment of the present application, it may be a distributed storage multi-scenario memory failure system, which can be installed in a cluster, for example, a main management node in a distributed storage system cluster.
[0075] The distributed storage multi-scenario memory failure system includes the following four modules: protocol access module, log management module, log processing center module and statistical analysis module.
[0076] The protocol access module is mainly responsible for completing the registration and access of the protocol; the log processing center module is mainly responsible for collecting and transferring the accessed protocols, including log recording, log storage and exporting to the customer's log server through the syslog interface; the log management module mainly includes log configuration, list display and download; the statistical analysis module is mainly responsible for performing statistics and analysis on the logs to ensure the reliable operation of the storage cluster.
[0077] Reference Figure 1 , showing the steps of the memory fault processing method provided by the embodiment of the present invention Figure 1 , applied to a main management node in a distributed storage system cluster, the method may include:
[0078] Step 101, in the case where a memory fault is detected in the memory, determining whether a preset threshold switch function is in an on state based on a memory threshold, wherein the memory fault includes a correctable error;
[0079] In the embodiment of the present application, although memory CE errors are usually correctable and will not cause problems in a small number of cases, frequent reporting may affect the stability of the server and even cause the server to crash. In order to alleviate this problem, by implementing the memory funnel and memory threshold functions in the BIOS internal code, we can pre-process the memory CE errors before reporting them to the server, thereby effectively reducing the frequency of error reporting and ensuring the stable operation of the server.
[0080] Therefore, first, it is determined that there is a memory failure in the memory. When a memory failure occurs, the BIOS determines that there is a memory failure in the memory.
[0081] After determining that a memory fault exists, determining whether a preset threshold switch function is in an on state based on a memory threshold, wherein the memory fault includes a correctable error.
[0082] Furthermore, the threshold switch function is pre-set in the basic input and output system, and before the step of determining whether the pre-set threshold switch function is in an on state based on the memory threshold, the method includes:
[0083] pre-configuring a memory threshold in the threshold switch function of the basic input and output system, wherein the memory threshold is set and revised based on user requirements;
[0084] The determining whether the preset threshold switch function is in the on state based on the memory threshold comprises:
[0085] In the case where it is detected that the memory threshold is the first target value, determining that the preset threshold switch function is in an off state;
[0086] In the case where it is detected that the memory threshold is the second target value, determining that the preset threshold switch function is in an on state;
[0087] The first target value is used to indicate that the threshold switch function is in an off state, and the second target value is used to indicate that the threshold switch function is in an on state;
[0088] After the step of determining whether the preset threshold switch function is in an on state based on the memory threshold, the method further includes:
[0089] The memory funnel and threshold functions are preconfigured in the basic input and output system;
[0090] Pre-configuring the funnel time information and funnel quantity information in the memory funnel and threshold function of the basic input and output system;
[0091] The leaky bucket time information is used to indicate a preset period of missed memory errors, and the leaky bucket quantity information is used to indicate the number of corresponding missed memory errors within the preset period.
[0092] In the embodiment of the present application, in order to more effectively manage the reporting of memory CE errors, we first integrated the memory threshold switch function into the memory funnel function. Specifically, a new option named "Memory CE Threshold" is added to the BIOS setup interface, through which the user can adjust the memory threshold setting.
[0093] The memory threshold can be set in the range of 1 to 8192, where the minimum value 1 is the first target value, which represents the off state of the threshold function, that is, any memory CE error will be reported immediately. When the user selects a value other than 1, that is, the second target value, it means that the threshold function is turned on. In this case, the error report is triggered only when the number of memory CE errors accumulates to the threshold set by the user. This design allows users to flexibly adjust according to actual needs. It can not only realize real-time monitoring of memory CE errors, but also reduce the frequency of error reporting by setting a higher threshold, thereby avoiding unnecessary impact on server performance.
[0094] Step 102, if the preset threshold switch function is in the on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function.
[0095] The present invention focuses on optimizing the memory CE error handling mechanism through the memory CE funnel and threshold functions. In addition to the memory CE threshold option mentioned above, the present invention also introduces two new parameters: funnel time information and funnel quantity information.
[0096] The leaky time information defines the period in which memory CE errors are missed, and its unit is seconds. For example, if the leaky time information is set to 1 second, it means that within a 1-second time window, the system will ignore a certain number of memory CE errors.
[0097] The leaky bucket number information specifies the number of memory CE errors that are missed in each leaky bucket time information period. For example, if the leaky bucket number information is set to 60, then in each 1-second period, the system will ignore 60 memory CE errors.
[0098] Combining these two parameters, the system will count the number of memory CE errors remaining after the leak within 24 hours after each leak time information cycle ends. If the number of these remaining errors reaches the memory CE threshold set by the user, the system will report these errors.
[0099] In addition, the present invention also provides an additional function, that is, after more than 24 hours, the system will automatically clear all accumulated memory CE error records. This function ensures that error records will not accumulate indefinitely, and also provides system administrators with the opportunity to regularly clean up and monitor errors. In this way, the system can ensure the flexibility and effectiveness of error monitoring while avoiding the burden on system performance caused by too many error records.
[0100] The memory fault processing method provided by the embodiment of the present invention is applied to the basic input and output system. When a memory fault is detected in the memory, it is determined whether the preset threshold switch function is in the on state based on the memory threshold, and the memory fault includes a correctable error; if the preset threshold switch function is in the on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function. In the embodiment of the present invention, the number of memory CE error reports can be well reduced through the memory funnel and memory threshold function, thereby reducing the probability of server restart or downtime, that is, through the role and implementation method of the memory CE error funnel function, and the role and implementation method of the memory CE error threshold, the two are combined together to achieve the reduction of the probability of server restart and downtime caused by memory CE errors.
[0101] Reference Figure 2 , showing the steps of the memory fault processing method provided by the embodiment of the present invention Figure 2 , applied to a main management node in a distributed storage system cluster, the method may include:
[0102] Step 201, in the case where a memory fault is detected in the memory, determining whether a preset threshold switch function is in an on state based on a memory threshold, wherein the memory fault includes a correctable error;
[0103] Step 202, if the preset threshold switch function is in the on state, obtaining first time information corresponding to the memory failure and time interval information;
[0104] Furthermore, the obtaining of the first time information corresponding to the memory failure and the time interval information includes:
[0105] Obtaining first time information corresponding to the memory failure and second time information corresponding to the last memory failure;
[0106] Time interval information is generated based on the first time information and the second time information.
[0107] Step 203, generating the number of memory errors to be missed within the time interval according to the time interval information, the funnel time information and the funnel quantity information;
[0108] Step 204, determining whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed;
[0109] Further, after the step of determining whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed, the method includes:
[0110] If so, reset the target number corresponding to the current memory failure to an initial value.
[0111] Step 205, if not, determining whether the memory threshold is greater than the number of memory errors to be missed;
[0112] Further, after the step of determining whether the memory threshold is greater than the number of memory errors to be missed, the method further includes:
[0113] If not, determining whether the time interval information is greater than a preset time interval;
[0114] If so, reset the target number corresponding to the current memory failure to an initial value.
[0115] Further, after the step of determining whether the time interval information is greater than a preset time interval, the method includes:
[0116] If not, continue to accumulate the target number corresponding to the current memory fault.
[0117] Step 206: If yes, report the memory failure to the baseboard management controller.
[0118] It should be noted that in the embodiment of the present application, the method of the present invention uses the memory CE funnel and threshold function to judge and process the memory CE error, and its main steps are as follows:
[0119] Initial recording and updating: When a memory CE error is detected, the current time is recorded as Time[0].
[0120] Calculate the time difference Second between the current time and the last error time. If it is the first error, set Second to 0. Record the current error number Err. If it is the first error, set Err to 1.
[0121] Calculate the funnel effect: Based on the set time interval Second, funnel time, and funnel quantity, calculate the number of memory CE errors Reduce that should be missed within the Second time.
[0122] Funnel processing: Compare the reported number of memory CE errors Ecc with Reduce: If Ecc is less than Reduce, all existing Ecc errors are missed, Ecc is reset to 1, and the current time Time[0] is recorded.
[0123] Further, after the step of determining whether the memory threshold is greater than the number of memory errors to be missed, the method further includes:
[0124] If so, the memory faults corresponding to the number of missed memory errors are processed, the target number corresponding to the remaining current memory faults is saved, and the current time information is recorded.
[0125] It should be noted that, in the embodiment of the present application, if the Ecc is greater than the Reduce, then after omitting the error in the number of Reduces, the remaining number of Eccs is saved and the current time information Time[0] is recorded.
[0126] It should be noted that in an embodiment of the present application, after determining that the memory threshold is greater than the number of memory errors to be missed, the method of the present invention also includes processing the memory faults corresponding to the number of memory errors to be missed. This step ensures that the system can effectively manage memory errors and avoid system performance degradation or instability due to error accumulation. By saving the target number corresponding to the remaining current memory faults and recording the current time information, the system can accurately monitor and handle memory errors in a timely manner while maintaining efficient operation. This refined error management mechanism not only improves the stability and reliability of the system, but also provides users with more flexible and customizable error handling options, thereby improving the user experience and the overall operating efficiency of the system while ensuring system performance.
[0127] Threshold judgment and processing: Determine whether the set memory CE threshold is greater than the number of leaks in the current Second time Reduce: If not, check whether Second exceeds 24 hours. If so, reset Err to 1, otherwise continue to accumulate the number of Errs and return to the previous step to continue execution. If so, further determine whether the accumulated number of errors Ecc exceeds the set memory CE threshold: If exceeded, report the fault and reset the relevant data. If not, determine whether the interval time Second exceeds 24 hours. If exceeded, reset Ecc to 1, otherwise continue to accumulate Ecc.
[0128] In the embodiment of the present invention, the number of memory CE error reports can be greatly reduced through the memory funnel and memory threshold functions, thereby reducing the probability of server restart or downtime. That is, through the role and implementation method of the memory CE error funnel function, as well as the role and implementation method of the memory CE error threshold, the two are combined together to achieve the reduction of the probability of server restart and downtime caused by memory CE errors.
[0129] Reference Figure 3 , shows a schematic diagram of the structure of a memory fault processing device provided by an embodiment of the present invention, the device comprising:
[0130] A determination module 301 is used to determine whether a preset threshold switch function is in an on state based on a memory threshold when a memory fault is detected in the memory, wherein the memory fault includes a correctable error;
[0131] The fault module 302 is configured to report the memory fault to the baseboard management controller based on the preset memory funnel and threshold function if the preset threshold switch function is in the on state.
[0132] Optionally, the threshold switch function is pre-set in the basic input and output system, and the device further includes:
[0133] A first module, configured to pre-configure a memory threshold in the threshold switch function of the basic input and output system, wherein the memory threshold is set and revised based on user requirements;
[0134] Wherein, the determination module includes:
[0135] A first determination submodule is used to determine that a preset threshold switch function is in an off state when it is detected that the memory threshold is a first target value;
[0136] A second determination submodule is used to determine that a preset threshold switch function is in an on state when it is detected that the memory threshold is a second target value;
[0137] The first target value is used to indicate that the threshold switch function is in an off state, and the second target value is used to indicate that the threshold switch function is in an on state;
[0138] The memory funnel and threshold function are pre-configured in the basic input and output system; the device also includes:
[0139] A second module is used to pre-configure the funnel time information and the funnel quantity information in the memory funnel and the threshold function of the basic input and output system;
[0140] The leaky bucket time information is used to indicate a preset period of missed memory errors, and the leaky bucket quantity information is used to indicate the number of corresponding missed memory errors within the preset period.
[0141] Optionally, the fault module includes:
[0142] A first fault submodule, used to obtain first time information corresponding to a memory fault and time interval information;
[0143] A second fault submodule, configured to generate a number of memory errors to be missed within the time interval according to the time interval information, the funnel time information and the funnel quantity information;
[0144] A third fault submodule, used to determine whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed;
[0145] a fourth fault submodule, for determining, if not, whether the memory threshold is greater than the number of memory errors to be missed;
[0146] The fifth fault submodule is configured to report the memory fault to a baseboard management controller if yes.
[0147] Optionally, the fault module further includes:
[0148] The sixth fault submodule is used to reset the target number corresponding to the current memory fault to an initial value if yes.
[0149] Optionally, the first fault submodule includes:
[0150] A first fault unit, used to obtain first time information corresponding to a memory fault and second time information corresponding to a previous memory fault;
[0151] The second fault unit is configured to generate time interval information based on the first time information and the second time information.
[0152] Optionally, the fault module includes:
[0153] a seventh fault submodule, for determining, if not, whether the time interval information is greater than a preset time interval;
[0154] An eighth fault submodule is used to reset the target number corresponding to the current memory fault to an initial value if yes.
[0155] Optionally, the device comprises:
[0156] The ninth fault submodule is used to, if not, continue to accumulate the target number corresponding to the current memory fault.
[0157] The memory fault processing device provided in the embodiment of the present invention is applied to the basic input and output system. When a memory fault is detected in the memory, it is determined whether the preset threshold switch function is in the on state based on the memory threshold, and the memory fault includes a correctable error; if the preset threshold switch function is in the on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function. In the embodiment of the present invention, the number of memory CE error reports can be well reduced through the memory funnel and memory threshold function, thereby reducing the probability of server restart or downtime, that is, through the role and implementation method of the memory CE error funnel function, and the role and implementation method of the memory CE error threshold, the two are combined together to achieve the reduction of the probability of server restart and downtime caused by memory CE errors.
[0158] The embodiment of the present invention also provides a communication device, such as Figure 4 As shown, it includes a processor 401, a communication interface 402, a memory 403 and a communication bus 404, wherein the processor 401, the communication interface 402, and the memory 403 communicate with each other through the communication bus 404.
[0159] Memory 403, used for storing computer programs;
[0160] The processor 401, when used to execute the program stored in the memory 403, can implement the following steps:
[0161] In the case of detecting that a memory fault exists in the memory, determining whether a preset threshold switch function is in an on state based on a memory threshold, wherein the memory fault includes a correctable error;
[0162] If the preset threshold switch function is in an on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function.
[0163] Among them, the memory and the processor are connected in a bus manner, and the bus may include any number of interconnected buses and bridges, and the bus connects various circuits of one or more processors and memories together. The bus can also connect various other circuits such as peripheral devices, voltage regulators, and power management circuits together, which are all well known in the art, so this article will not further describe them. The bus interface provides an interface between the bus and the transceiver. The transceiver can be one element or multiple elements, such as multiple receivers and transmitters, providing a unit for communicating with various other devices on a transmission medium. The data processed by the processor can be transmitted on a wired medium or on a wireless medium through an antenna. Further, the antenna also receives data and transmits the data to the processor. The processor is responsible for managing the bus and general processing, and can also provide various functions, including timing, peripheral interfaces, voltage regulation, power management, and other control functions. The memory can be used to store data used by the processor when performing operations.
[0164] The communication bus mentioned in the above terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0165] The communication interface is used for communication between the above terminal and other devices.
[0166] The memory may include a random access memory (RAM) or a non-volatile memory, such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0167] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0168] In another embodiment provided by the present invention, a computer-readable storage medium is provided, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer executes the memory failure processing method described in any one of the above embodiments.
[0169] In another embodiment provided by the present invention, a computer program product including instructions is also provided, which, when executed on a computer, enables the computer to execute the memory failure processing method described in any one of the above embodiments.
[0170] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented by software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk (SSD)), etc.
[0171] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "including one..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0172] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0173] The above description is only a preferred embodiment of the present invention and is not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention are included in the protection scope of the present invention.
Claims
1. A memory fault processing method, characterized in that: Applied to a basic input and output system, the method comprises: In the case of detecting that a memory fault exists in the memory, determining whether a preset threshold switch function is in an on state based on a memory threshold, wherein the memory fault includes a correctable error; If the preset threshold switch function is in an on state, the memory fault is reported to the baseboard management controller based on the preset memory funnel and threshold function.
2. The method according to claim 1, characterized in that The threshold switch function is pre-set in the basic input and output system. Before the step of determining whether the pre-set threshold switch function is in an on state based on the memory threshold, the method includes: pre-configuring a memory threshold in the threshold switch function of the basic input and output system, wherein the memory threshold is set and revised based on user requirements; The determining whether the preset threshold switch function is in the on state based on the memory threshold comprises: In the case where it is detected that the memory threshold is the first target value, determining that the preset threshold switch function is in an off state; In the case where it is detected that the memory threshold is the second target value, determining that the preset threshold switch function is in an on state; The first target value is used to indicate that the threshold switch function is in an off state, and the second target value is used to indicate that the threshold switch function is in an on state; After the step of determining whether the preset threshold switch function is in an on state based on the memory threshold, the method further includes: The memory funnel and threshold functions are preconfigured in the basic input and output system; Pre-configuring the funnel time information and funnel quantity information in the memory funnel and threshold function of the basic input and output system; The leaky bucket time information is used to indicate a preset period of missed memory errors, and the leaky bucket quantity information is used to indicate the number of corresponding missed memory errors within the preset period.
3. The method according to claim 2, characterized in that The reporting of the memory fault to the baseboard management controller based on the pre-set memory funnel and threshold function includes: Obtain the first time information corresponding to the memory failure and the time interval information; Generate the number of memory errors to be missed within the time interval according to the time interval information, the leaky bucket time information and the leaky bucket number information; Determine whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed; If not, determining whether the memory threshold is greater than the number of memory errors to be missed; If yes, the memory failure is reported to the baseboard management controller.
4. The method according to claim 3, characterized in that After the step of determining whether the target number corresponding to the current memory fault is less than the number of memory errors to be missed, the method includes: If so, reset the target number corresponding to the current memory failure to an initial value.
5. The method according to claim 3, characterized in that: The obtaining of the first time information corresponding to the memory failure and the time interval information includes: Obtaining first time information corresponding to the memory failure and second time information corresponding to the last memory failure; Time interval information is generated based on the first time information and the second time information.
6. The method according to claim 3, characterized in that After the step of determining whether the memory threshold is greater than the number of memory errors to be missed, the method further includes: If not, determining whether the time interval information is greater than a preset time interval; If so, reset the target number corresponding to the current memory failure to an initial value.
7. The method according to claim 6, characterized in that After the step of determining whether the time interval information is greater than a preset time interval, the method includes: If not, continue to accumulate the target number corresponding to the current memory fault.
8. A memory fault processing device, characterized in that: The device comprises: A determination module, configured to determine whether a preset threshold switch function is in an on state based on a memory threshold when a memory fault is detected in the memory, wherein the memory fault includes a correctable error; The fault module is used to report the memory fault to the baseboard management controller based on the preset memory funnel and threshold function if the preset threshold switch function is in the on state.
9. A communication device, characterized in that: include: A transceiver, a memory, a processor, and a program stored on the memory and executable on the processor; The processor is used to read the program in the memory to implement the memory fault processing method as described in any one of claims 1-7.
10. A readable storage medium for storing a program, characterized in that: When the program is executed by a processor, the memory fault handling method as described in any one of claims 1 to 7 is implemented.