WO2022001138A1 - Ssd disk controller reset method, system and apparatus, and readable storage medium - Google Patents
Ssd disk controller reset method, system and apparatus, and readable storage medium Download PDFInfo
- Publication number
- WO2022001138A1 WO2022001138A1 PCT/CN2021/077023 CN2021077023W WO2022001138A1 WO 2022001138 A1 WO2022001138 A1 WO 2022001138A1 CN 2021077023 W CN2021077023 W CN 2021077023W WO 2022001138 A1 WO2022001138 A1 WO 2022001138A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- queue
- feature code
- module
- request
- disk controller
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012217 deletion Methods 0.000 claims description 20
- 230000037430 deletion Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
An SSD disk controller reset method, system and apparatus, and a computer-readable storage medium. The method is applied to a front-end protocol interface module, and comprises: receiving an IO sent by a rear-end service module (S11); determining whether an IO queue corresponding to a feature code carried by the IO is present (S12); and if not, discarding the IO (S13). Whether an IO queue corresponding to an IO is present is determined by using a feature code in the IO, and according to whether the IO queue is present, whether the IO is a timeout IO and whether the IO can be sent to a Host end are determined, such that the IO queue can be successfully deleted for a reset operation even before a rear-end service module releases all the IOs, and the situation in which a timeout IO is sent to the Host end is thus avoided, thereby improving the reset speed and reliability.
Description
本申请要求于2020年06月30日提交中国专利局、申请号为202010616527.2、发明名称为“一种SSD盘片控制器复位方法、系统、装置及可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application filed on June 30, 2020, with the application number of 202010616527.2 and the invention titled "An SSD disk controller reset method, system, device and readable storage medium" , the entire contents of which are incorporated herein by reference.
本发明涉及计算机技术领域,特别涉及一种SSD盘片控制器复位方法、系统、装置及计算机可读存储介质。The present invention relates to the field of computer technology, and in particular, to a method, system, device and computer-readable storage medium for resetting an SSD disk controller.
SSD(Solid-state drive,固态硬盘)相较于传统的机械硬盘,由于其显著的低读写延时和高带宽,正在越来越广泛的应用于企业高性能存储系统以及个人消费者领域。Compared with traditional mechanical hard drives, SSDs (Solid-state drives) are more and more widely used in enterprise high-performance storage systems and personal consumer fields due to their significantly lower read and write latency and high bandwidth.
SSD具有多种接口形式,其中基于PCIe总线(PCIe,peripheral component interconnect express,高速串行计算机扩展总线标准)的NVMe协议接口(NVMe,Non-Volatile Memory express,NVMe存储系统)的SSD由于其具有更低的延时、更高的带宽以及更高的随机读写IOPS(Input/Output Operations Per Second,每秒进行读写操作的次数),在市场上占据着重要的地位。SSD has a variety of interface forms, among which SSD based on PCIe bus (PCIe, peripheral component interconnect express, high-speed serial computer expansion bus standard) NVMe protocol interface (NVMe, Non-Volatile Memory express, NVMe storage system) SSD has more Low latency, higher bandwidth, and higher random read and write IOPS (Input/Output Operations Per Second, the number of read and write operations per second) occupy an important position in the market.
采用NVMe协议接口的SSD盘根据协议提供了控制器复位的接口:Host可以通过对盘片控制寄存器的配置触发盘片做控制器复位流程,在盘片接收到Host下发的复位请求后,会停止当前业务并进行删除队列的动作,完成这些处理后通过状态寄存器通知Host复位完成信息。The SSD disk using the NVMe protocol interface provides an interface for controller reset according to the protocol: The Host can trigger the disk to do the controller reset process by configuring the disk control register. After the disk receives the reset request sent by the Host, it will Stop the current service and perform the action of deleting the queue. After completing these processes, the Host is notified of the reset completion information through the status register.
在实际应用过程中,控制器复位多见于异常场景下,如SSD盘内IO(Input/Output,输入/输出)超时的场景:Host检测到出现IO超时即会对超时的IO进行Abort,如果Abort失败后则会进行队列删除、控制器复位的流程。一般情况下,SSD盘内分为前端协议接口模块以及后端业务模块,IO超时通常意味着后端业务模块出现了某种异常,当前端协议模块接收到队 列删除请求后通常需要等待并确认后端的IO资源已释放后才能继续完成队列删除的后续流程,否则,如果仅仅删除和释放了前端的资源而没有等待并确认后端资源的释放,则有可能会出现后端异常的IO在某个时刻又返回给了前端接口,更特别的,如果此时Host恰好又重新创建了队列,则有可能通过新创建的队列返回Host,进而发生导致数据不一致问题的严重后果。所以,在这种机制下,控制器复位删队列时等待并确认后端IO资源释放是一个重要的环节。但是在实际场景下,既然出现了IO超时,说明SSD盘片后端模块可能已经出现了某种故障,在此故障状态下可能无法完成资源释放的动作,这样便会导致前端的等待条件无法得到满足,导致流程卡住无法继续处理。所以实际应用中比较常出现由于无法确认后端IO资源释放而导致队列删除失败,进而导致控制器复位失败的问题发生。In the actual application process, the controller reset is more common in abnormal scenarios, such as the scenario in which the IO (Input/Output, input/output) in the SSD is overtime: the Host will abort the overtime IO when it detects an IO timeout. After failure, the process of queue deletion and controller reset will be performed. Generally speaking, the SSD disk is divided into front-end protocol interface module and back-end business module. IO timeout usually means that some kind of abnormality has occurred in the back-end business module. After receiving the queue deletion request, the front-end protocol module usually needs to wait and confirm. The subsequent process of queue deletion can be completed only after the IO resources of the terminal have been released. Otherwise, if only the front-end resources are deleted and released without waiting for and confirming the release of the back-end resources, there may be abnormal back-end IO in a certain The time is returned to the front-end interface. More specifically, if the host happens to recreate the queue at this time, it is possible to return to the host through the newly created queue, which will lead to serious consequences of data inconsistency. Therefore, under this mechanism, waiting for and confirming the release of back-end IO resources when the controller resets and deletes the queue is an important link. However, in the actual scenario, since IO timeout occurs, it means that some kind of failure has occurred in the back-end module of the SSD disk. In this failure state, the action of resource release may not be completed, which will cause the front-end waiting conditions to fail to be obtained. Satisfied, causing the process to get stuck and unable to continue processing. Therefore, in practical applications, it is often encountered that the queue deletion fails due to the inability to confirm the release of the back-end IO resources, which in turn leads to the failure of the controller reset.
为此,需要一种更为可靠有效的复位方法。Therefore, a more reliable and effective reset method is required.
发明内容SUMMARY OF THE INVENTION
有鉴于此,本发明的目的在于提供一种SSD盘片控制器复位方法、系统、装置及计算机可读存储介质,更为可靠有效。其具体方案如下:In view of this, the purpose of the present invention is to provide a method, system, device and computer-readable storage medium for resetting an SSD disk controller, which are more reliable and effective. Its specific plan is as follows:
一种SSD盘片控制器复位方法,应用于前端协议接口模块,包括:A method for resetting an SSD disk controller, applied to a front-end protocol interface module, includes:
接收后端业务模块发送的IO;Receive the IO sent by the back-end business module;
判断是否存在与所述IO携带的特征码对应的IO队列;Determine whether there is an IO queue corresponding to the feature code carried by the IO;
若不存在,则舍弃所述IO。If it does not exist, the IO is discarded.
可选的,所述接收IO之前,还包括:Optionally, before the receiving IO, the method further includes:
接收Host的队列创建指令;Receive the host's queue creation command;
根据所述队列创建指令,创建所述IO队列和所述IO队列的所述特征码;According to the queue creation instruction, create the IO queue and the feature code of the IO queue;
接收所述Host发送的IO请求;Receive the IO request sent by the Host;
将所述特征码写入到所述IO请求中;write the feature code into the IO request;
通过所述IO队列发送带有所述特征码的所述IO请求至所述后端业务模块。Send the IO request with the feature code to the back-end service module through the IO queue.
可选的,所述特征码根据所述IO队列的队列ID、CPU tick计数信息 和SSD设备当前的上电次数制定。Optionally, the feature code is formulated according to the queue ID of the IO queue, the CPU tick count information and the current power-on times of the SSD device.
可选的,所述将所述特征码写入到所述IO请求中的过程,包括:Optionally, the process of writing the feature code into the IO request includes:
将所述特征码写入到所述IO请求中的上下文信息中。Write the feature code into the context information in the IO request.
可选的,所述判断是否存在与所述IO携带的特征码对应的IO队列的过程,包括:Optionally, the process of judging whether there is an IO queue corresponding to the feature code carried by the IO includes:
获取所述IO上下文信息中携带的所述特征码;Obtain the feature code carried in the IO context information;
判断是否存在与所述特征码对应的IO队列。Determine whether there is an IO queue corresponding to the feature code.
可选的,还包括:Optionally, also include:
接收Host发送的队列删除指令;Receive the queue deletion command sent by the Host;
直接根据所述队列删除指令删除相应的IO队列。The corresponding IO queue is deleted directly according to the queue deletion instruction.
本发明还公开了一种SSD盘片控制器复位系统,应用于前端协议接口模块,包括:The invention also discloses an SSD disk controller reset system, which is applied to the front-end protocol interface module, including:
IO接收模块,用于接收后端业务模块发送的IO;The IO receiving module is used to receive the IO sent by the back-end business module;
特征码判断模块,用于判断是否存在与所述IO携带的特征码对应的IO队列;A feature code judgment module, for judging whether there is an IO queue corresponding to the feature code carried by the IO;
IO舍弃模块,用于若所述特征码判断模块判定所述IO队列不存在,则舍弃所述IO。The IO discarding module is configured to discard the IO if the feature code judging module determines that the IO queue does not exist.
可选的,还包括:Optionally, also include:
指令接收模块,用于接收Host的队列创建指令;The instruction receiving module is used to receive the queue creation instruction of the Host;
队列创建模块,用于根据所述队列创建指令,创建所述IO队列和所述IO队列的所述特征码;a queue creation module for creating the IO queue and the feature code of the IO queue according to the queue creation instruction;
IO请求接收模块,用于接收所述Host发送的IO请求;The IO request receiving module is used to receive the IO request sent by the Host;
特征码写入模块,用于将所述特征码写入到所述IO请求中;a feature code writing module for writing the feature code into the IO request;
IO请求发送模块,用于通过所述IO队列发送带有所述特征码的所述IO请求至所述后端业务模块。An IO request sending module, configured to send the IO request with the feature code to the back-end business module through the IO queue.
本发明还公开了一种SSD盘片控制器复位装置,包括:The invention also discloses an SSD disk controller reset device, comprising:
存储器,用于存储计算机程序;memory for storing computer programs;
处理器,用于执行所述计算机程序以实现如前述的SSD盘片控制器复位方法。The processor is configured to execute the computer program to implement the foregoing method for resetting the SSD disk controller.
本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前述的SSD盘片控制器复位方法。The present invention also discloses a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the foregoing method for resetting an SSD disk controller is implemented.
本发明中,SSD盘片控制器复位方法,应用于前端协议接口模块,包括:接收后端业务模块发送的IO;判断是否存在与IO携带的特征码对应的IO队列;若不存在,则舍弃IO。In the present invention, the SSD disk controller reset method is applied to the front-end protocol interface module, including: receiving the IO sent by the back-end service module; judging whether there is an IO queue corresponding to the feature code carried by the IO; if not, discarding IO.
本发明利用IO中的特征码,判断是否存在与该IO对应的IO队列,根据IO队列是否存在,判断出IO是否为超时IO,是否可以被发送至Host端,成功在即使未等待后端业务模块释放全部IO前,也可以删除IO队列进行复位操作,而不会初选超时IO发送至Host端的情况,提高了复位速度和可靠性。The present invention uses the feature code in the IO to judge whether there is an IO queue corresponding to the IO, and according to whether the IO queue exists, it is judged whether the IO is a timeout IO and whether it can be sent to the Host side. Before the module releases all IOs, it can also delete the IO queue for reset operation, instead of sending IOs to the host in the primary selection timeout, which improves the reset speed and reliability.
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。In order to explain the embodiments of the present invention or the technical solutions in the prior art more clearly, the following briefly introduces the accompanying drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only It is an embodiment of the present invention. For those of ordinary skill in the art, other drawings can also be obtained according to the provided drawings without creative work.
图1为本发明实施例公开的一种SSD盘片控制器复位方法流程示意图;1 is a schematic flowchart of a method for resetting an SSD disk controller disclosed in an embodiment of the present invention;
图2为本发明实施例公开的另一种SSD盘片控制器复位方法流程示意图;2 is a schematic flowchart of another method for resetting an SSD disk controller disclosed in an embodiment of the present invention;
图3为本发明实施例公开的一种SSD盘片控制器复位系统结构示意图。FIG. 3 is a schematic structural diagram of a reset system for an SSD disk controller disclosed in an embodiment of the present invention.
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, but not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
本发明实施例公开了一种SSD盘片控制器复位方法,参见图1所示,应用于前端协议接口模块,该方法包括:An embodiment of the present invention discloses a method for resetting an SSD disk controller. Referring to FIG. 1, the method is applied to a front-end protocol interface module. The method includes:
S11:接收后端业务模块发送的IO。S11: Receive the IO sent by the back-end business module.
具体的,在SSD设备中的前端协议接口模块将Host端的IO请求发送至SSD设备中的后端业务模块后,后端业务模块会返回相应的IO,例如,IO请求所需要的数据或者是按照IO请求处理完成后的应答信息,因此,前端协议接口模块会接收后端业务模块发送的IO。Specifically, after the front-end protocol interface module in the SSD device sends the IO request from the Host side to the back-end business module in the SSD device, the back-end business module will return the corresponding IO, for example, the data required by the IO request or according to The response information after the IO request processing is completed. Therefore, the front-end protocol interface module will receive the IO sent by the back-end business module.
其中,Host端可以为与用户直接交互的操作系统。The Host side may be an operating system that directly interacts with the user.
S12:判断是否存在与IO携带的特征码对应的IO队列。S12: Determine whether there is an IO queue corresponding to the feature code carried by the IO.
具体的,在SSD盘片控制器需要复位时,后端业务模块可能会存在超时现象,因此会有IO堆积的情况发生,此时,后端业务模块可能会发送超时的IO至前端协议接口模块,为了在SSD盘片控制器复位时,能够直接删除IO队列进行复位,避免过长时间等待后端业务模块释放IO、时间过长导致复位失败和超时的IO通过前端协议接口模块从后端业务模块发送至Host端的情况,需要判断是否存在与IO携带的特征码对应的IO队列。Specifically, when the SSD disk controller needs to be reset, the back-end service module may have a timeout phenomenon, so there will be IO accumulation. At this time, the back-end service module may send the time-out IO to the front-end protocol interface module. , in order to directly delete the IO queue for reset when the SSD disk controller is reset, to avoid waiting too long for the back-end business module to release IO, and the IO that takes too long to reset fails and times out passes the front-end protocol interface module from the back-end business When the module is sent to the Host, it is necessary to determine whether there is an IO queue corresponding to the feature code carried by the IO.
可以理解的是,一个IO请求对应一个IO队列,正常状态下,后端业务模块根据IO请求返回的IO,也会使用与IO请求发送至后端业务模块时,所使用的同一个IO队列;为了实现复位时能够直接删除IO队列,不再等待后端业务模块释放IO,本发明实施例在IO超时的情况下,与IO对应的IO队列可能已经因复位操作被删除,此时后端业务模块返回的超时的IO将不会有与之对应的IO队列,只能通过为了处理其它IO请求而创建的IO队列发送至前端协议接口模块,因此,通过判断IO中与IO队列相对应的特征码,便可以得知,该IO是否为超时IO,是否应该舍弃。It is understandable that an IO request corresponds to an IO queue. Under normal conditions, the IO returned by the back-end business module according to the IO request will also use the same IO queue used when the IO request is sent to the back-end business module; In order to directly delete the IO queue during reset, without waiting for the back-end business module to release the IO, in the embodiment of the present invention, when the IO times out, the IO queue corresponding to the IO may have been deleted due to the reset operation. At this time, the back-end business The time-out IO returned by the module will not have a corresponding IO queue, and can only be sent to the front-end protocol interface module through the IO queue created to process other IO requests. Therefore, by judging the characteristics of the IO corresponding to the IO queue code, you can know whether the IO is a timeout IO and whether it should be discarded.
其中,特征码是根据IO请求创建IO队列时与IO队列对应的识别信息,每个IO队列拥有唯一的特征码,因此,通过特征码可以查找出相应的IO队列。Among them, the feature code is the identification information corresponding to the IO queue when the IO queue is created according to the IO request. Each IO queue has a unique feature code. Therefore, the corresponding IO queue can be found through the feature code.
S13:若不存在,则舍弃IO。S13: If it does not exist, discard the IO.
具体的,如果利用当前IO中的特征码查找不到相应的IO队列,说明当前IO对应的IO队列已经被删除,说明当前IO是超时IO,不应该发送 至Host端,直接在前端协议接口模块舍弃IO,避免了在删除掉IO队列后,会有超时IO发送至Host端的情况,为SSD盘片控制器快速复位提供了前提保障。Specifically, if the corresponding IO queue cannot be found by using the feature code in the current IO, it means that the IO queue corresponding to the current IO has been deleted, indicating that the current IO is a timeout IO and should not be sent to the Host side, but directly in the front-end protocol interface module. Abandoning IO avoids the situation that IO will be sent to the host over time after the IO queue is deleted, which provides a prerequisite for the rapid reset of the SSD disk controller.
具体的,如果存在与特征码对应的IO队列,则说明该IO目前还有阈值对应的IO队列,目前没有进行复位操作,该IO有效,可以将该IO发送至Host端,完成整个IO请求。Specifically, if there is an IO queue corresponding to the feature code, it means that the IO currently has an IO queue corresponding to the threshold, and no reset operation is currently performed. The IO is valid, and the IO can be sent to the Host to complete the entire IO request.
可见,本发明实施例利用IO中的特征码,判断是否存在与该IO对应的IO队列,根据IO队列是否存在,判断出IO是否为超时IO,是否可以被发送至Host端,成功在即使未等待后端业务模块释放全部IO前,也可以删除IO队列进行复位操作,而不会初选超时IO发送至Host端的情况,提高了复位速度和可靠性。It can be seen that the embodiment of the present invention uses the feature code in the IO to determine whether there is an IO queue corresponding to the IO, and according to whether the IO queue exists, it is determined whether the IO is a timeout IO and whether it can be sent to the Host side. Before waiting for the back-end business module to release all IOs, the IO queue can also be deleted for the reset operation, instead of sending the IOs to the host in the primary selection timeout, which improves the reset speed and reliability.
本发明实施例公开了一种具体的SSD盘片控制器复位方法,应用于前端协议接口模块,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图2所示,具体的:The embodiment of the present invention discloses a specific SSD disk controller reset method, which is applied to the front-end protocol interface module. Compared with the previous embodiment, this embodiment further describes and optimizes the technical solution. See Figure 2, specifically:
S201:接收Host的队列创建指令。S201: Receive a queue creation instruction from the Host.
具体的,Host端在发送IO请求前,需要为IO请求分配相应的IO队列,因此,会发送相应的队列创建指令至前端协议接口模块,创建新的IO队列,以供后续IO请求使用。Specifically, before sending an IO request, the Host needs to allocate a corresponding IO queue for the IO request. Therefore, it will send the corresponding queue creation command to the front-end protocol interface module to create a new IO queue for subsequent IO requests.
S202:根据队列创建指令,创建IO队列和IO队列的特征码。S202: Create an IO queue and a feature code of the IO queue according to the queue creation instruction.
具体的,根据队列创建指令创建IO队列时,同时为该IO队列创建相应的特征码,其中,特征码可以根据IO队列的队列ID(Identity document,身份标识号)、CPU tick计数信息(CPU tick,CPU时钟,CPU,central processing unit,中央处理器)和SSD设备当前的上电次数制定,得到独一无二的特征码,当然,也可以根据实际应用场景根据不同的参数或设置方法设置唯一的特征码。Specifically, when the IO queue is created according to the queue creation instruction, a corresponding feature code is created for the IO queue at the same time. , CPU clock, CPU, central processing unit, central processing unit) and the current power-on times of the SSD device to obtain a unique feature code. Of course, you can also set a unique feature code according to different parameters or setting methods according to actual application scenarios. .
S203:接收Host发送的IO请求;S203: Receive the IO request sent by the Host;
S204:将特征码写入到IO请求中。S204: Write the feature code into the IO request.
具体的,接收到Host发送的IO请求后,可以将特征码写入到IO请求 中,IO请求与IO之间本身可以通过上下文信息确认所属关系,为此,可以将特征码写入到IO请求中的上下文信息中,这样在利用上下文确定IO与IO请求关系的同时便可以获取到特征码。Specifically, after receiving the IO request sent by the Host, the feature code can be written into the IO request, and the relationship between the IO request and the IO can be confirmed through the context information. To this end, the feature code can be written into the IO request. In this way, the feature code can be obtained while using the context to determine the relationship between IO and IO request.
S205:通过IO队列发送带有特征码的IO请求至后端业务模块。S205: Send the IO request with the feature code to the back-end business module through the IO queue.
可以理解的是,通过与特征码相应的IO队列将IO请求发送至后端业务模块。It can be understood that the IO request is sent to the back-end business module through the IO queue corresponding to the feature code.
S206:接收后端业务模块发送的IO;S206: Receive the IO sent by the back-end business module;
S207:获取IO上下文信息中携带的特征码。S207: Obtain the feature code carried in the IO context information.
具体的,后端业务模块根据IO请求中上下文信息,生成的IO中的上下文信息同样带有一样的特征码,因此,接收到后端业务模块发送的IO后,可以从IO上下文信息中获取IO的特征码,以供后续判断。Specifically, the context information in the IO generated by the back-end business module also has the same feature code according to the context information in the IO request. Therefore, after receiving the IO sent by the back-end business module, the IO can be obtained from the IO context information. feature code for subsequent judgment.
S208:判断是否存在与特征码对应的IO队列;S208: Determine whether there is an IO queue corresponding to the feature code;
S209:若不存在,则舍弃IO;S209: If it does not exist, discard IO;
S210:接收Host发送的队列删除指令。S210: Receive a queue deletion instruction sent by the Host.
具体的,复位时,需要进行IO队列的删除,因此,队列删除指令可以为复位指令也可以为单独用于删除队列的指令。Specifically, during reset, the IO queue needs to be deleted. Therefore, the queue deletion instruction may be a reset instruction or an instruction used to delete a queue alone.
S211:直接根据队列删除指令删除相应的IO队列。S211: Delete the corresponding IO queue directly according to the queue deletion instruction.
具体的,由于通过判断特征码,能够有效的阻止超时IO发送至Host,因此,前端协议接口模块不用在等待后端业务模块释放IO,在接收到队列删除指令后可以直接删除相应的IO队列,完成SSD盘片控制器的复位,提高了复位效率,并且不受后端业务模块的影响,提高了可靠性。Specifically, by judging the feature code, it can effectively prevent the timeout IO from being sent to the Host. Therefore, the front-end protocol interface module does not need to wait for the back-end business module to release the IO, and can directly delete the corresponding IO queue after receiving the queue deletion instruction. The reset of the SSD disk controller is completed, the reset efficiency is improved, and the reliability is improved without being affected by the back-end service modules.
其中,后端业务模块在复位时,可以自行按照预设的复位方法对IO进行释放,即使释放失败出现IO堵塞,也不会影响到IO队列的删除。Among them, when the back-end business module is reset, it can release the IO according to the preset reset method by itself. Even if the release fails and the IO is blocked, it will not affect the deletion of the IO queue.
需要说明的是,S210可以在任意时刻执行,即使当前没有IO队列,也可以接收队列删除指令并执行,当然执行前后并不会产生变化,因此S210相对于S201至S209之间没有明确的先后执行顺序,在此不做限定。It should be noted that S210 can be executed at any time. Even if there is no IO queue currently, the queue deletion instruction can be received and executed. Of course, there is no change before and after execution. Therefore, S210 is not executed in a clear order relative to S201 to S209. The order is not limited here.
相应的,本发明实施例还公开了一种SSD盘片控制器复位系统,参见图3所示,应用于前端协议接口模块,包括:Correspondingly, an embodiment of the present invention also discloses a system for resetting an SSD disk controller, as shown in FIG. 3 , which is applied to a front-end protocol interface module, including:
IO接收模块11,用于接收后端业务模块发送的IO;The IO receiving module 11 is used to receive the IO sent by the back-end business module;
特征码判断模块12,用于判断是否存在与IO携带的特征码对应的IO队列;The feature code judgment module 12 is used to judge whether there is an IO queue corresponding to the feature code carried by the IO;
IO舍弃模块13,用于若特征码判断模块12判定IO队列不存在,则舍弃IO。The IO discarding module 13 is configured to discard the IO if the feature code determination module 12 determines that the IO queue does not exist.
可见,本发明实施例利用IO中的特征码,判断是否存在与该IO对应的IO队列,根据IO队列是否存在,判断出IO是否为超时IO,是否可以被发送至Host端,成功在即使未等待后端业务模块释放全部IO前,也可以删除IO队列进行复位操作,而不会初选超时IO发送至Host端的情况,提高了复位速度和可靠性。It can be seen that the embodiment of the present invention uses the feature code in the IO to determine whether there is an IO queue corresponding to the IO, and according to whether the IO queue exists, it is determined whether the IO is a timeout IO and whether it can be sent to the Host side. Before waiting for the back-end business module to release all IOs, the IO queue can also be deleted for the reset operation, instead of sending the IOs to the host in the primary selection timeout, which improves the reset speed and reliability.
具体的,还可以包括指令接收模块、队列创建模块、IO请求接收模块、特征码写入模块和IO请求发送模块;其中,Specifically, it may also include an instruction receiving module, a queue creation module, an IO request receiving module, a feature code writing module, and an IO request sending module; wherein,
指令接收模块,用于接收Host的队列创建指令;The instruction receiving module is used to receive the queue creation instruction of the Host;
队列创建模块,用于根据队列创建指令,创建IO队列和IO队列的特征码;The queue creation module is used to create the IO queue and the feature code of the IO queue according to the queue creation instruction;
IO请求接收模块,用于接收Host发送的IO请求;The IO request receiving module is used to receive the IO request sent by the Host;
特征码写入模块,用于将特征码写入到IO请求中;The feature code writing module is used to write the feature code into the IO request;
IO请求发送模块,用于通过IO队列发送带有特征码的IO请求至后端业务模块。The IO request sending module is used to send the IO request with the characteristic code to the back-end business module through the IO queue.
其中,特征码可以根据IO队列的队列ID、CPU tick计数信息和SSD设备当前的上电次数制定。Among them, the feature code can be formulated according to the queue ID of the IO queue, CPU tick count information, and the current number of power-on times of the SSD device.
具体的,上述特征码写入模块,具体用于将特征码写入到IO请求中的上下文信息中。Specifically, the above feature code writing module is specifically configured to write the feature code into the context information in the IO request.
具体的,上述特征码判断模块12,可以包括特征码获取单元和特征码判断单元;其中,Specifically, the above-mentioned feature code judgment module 12 may include a feature code acquisition unit and a feature code judgment unit; wherein,
特征码获取单元,用于获取IO上下文信息中携带的特征码;A feature code obtaining unit, used to obtain the feature code carried in the IO context information;
特征码判断单元,用于判断是否存在与特征码对应的IO队列。The feature code judgment unit is used to judge whether there is an IO queue corresponding to the feature code.
具体的,还可以包括删除指令接收模块和队列删除模块;其中,Specifically, it may also include a deletion instruction receiving module and a queue deletion module; wherein,
删除指令接收模块,用于接收Host发送的队列删除指令;The deletion instruction receiving module is used to receive the queue deletion instruction sent by the Host;
队列删除模块,用于直接根据队列删除指令删除相应的IO队列。The queue deletion module is used to delete the corresponding IO queue directly according to the queue deletion instruction.
本发明实施例还公开了一种SSD盘片控制器复位装置,包括:The embodiment of the present invention also discloses a device for resetting an SSD disk controller, comprising:
存储器,用于存储计算机程序;memory for storing computer programs;
处理器,用于执行计算机程序以实现如前述的SSD盘片控制器复位方法。The processor is used for executing the computer program to implement the foregoing method for resetting the SSD disk controller.
本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述的SSD盘片控制器复位方法。An embodiment of the present invention further discloses a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the foregoing method for resetting an SSD disk controller is implemented.
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。Finally, it should also be noted that in this document, relational terms such as first and second are used only to distinguish one entity or operation from another, and do not necessarily require or imply these entities or that there is any such actual relationship or sequence between operations. Moreover, the terms "comprising", "comprising" or any other variation thereof are intended to encompass a non-exclusive inclusion such that a process, method, article or device that includes a list of elements includes not only those elements, but also includes not explicitly listed or other elements inherent to such a process, method, article or apparatus. Without further limitation, an element qualified by the phrase "comprising a..." does not preclude the presence of additional identical elements in a process, method, article or apparatus that includes the element.
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。Professionals may further realize that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two, in order to clearly illustrate the possibilities of hardware and software. Interchangeability, the above description has generally described the components and steps of each example in terms of functionality. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each particular application, but such implementations should not be considered beyond the scope of the present invention.
以上对本发明所提供的技术内容进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员, 依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。The technical content provided by the present invention is described in detail above, and specific examples are used in this paper to illustrate the principles and implementations of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea; At the same time, for those skilled in the art, according to the idea of the present invention, there will be changes in the specific embodiments and application scope. To sum up, the content of this specification should not be construed as a limitation of the present invention.
Claims (10)
- 一种SSD盘片控制器复位方法,其特征在于,应用于前端协议接口模块,包括:A method for resetting an SSD disk controller, characterized in that it is applied to a front-end protocol interface module, comprising:接收后端业务模块发送的IO;Receive the IO sent by the back-end business module;判断是否存在与所述IO携带的特征码对应的IO队列;Determine whether there is an IO queue corresponding to the feature code carried by the IO;若不存在,则舍弃所述IO。If it does not exist, the IO is discarded.
- 根据权利要求1所述的SSD盘片控制器复位方法,其特征在于,所述接收IO之前,还包括:The method for resetting an SSD disk controller according to claim 1, wherein before the receiving IO, the method further comprises:接收Host的队列创建指令;Receive the host's queue creation command;根据所述队列创建指令,创建所述IO队列和所述IO队列的所述特征码;According to the queue creation instruction, create the IO queue and the feature code of the IO queue;接收所述Host发送的IO请求;Receive the IO request sent by the Host;将所述特征码写入到所述IO请求中;write the feature code into the IO request;通过所述IO队列发送带有所述特征码的所述IO请求至所述后端业务模块。Send the IO request with the feature code to the back-end service module through the IO queue.
- 根据权利要求1所述的SSD盘片控制器复位方法,其特征在于,所述特征码根据所述IO队列的队列ID、CPU tick计数信息和SSD设备当前的上电次数制定。SSD disk controller reset method according to claim 1, is characterized in that, described feature code is formulated according to the queue ID of described IO queue, CPU tick count information and current power-on times of SSD equipment.
- 根据权利要求2所述的SSD盘片控制器复位方法,其特征在于,所述将所述特征码写入到所述IO请求中的过程,包括:The method for resetting an SSD disk controller according to claim 2, wherein the process of writing the feature code into the IO request comprises:将所述特征码写入到所述IO请求中的上下文信息中。Write the feature code into the context information in the IO request.
- 根据权利要求4所述的SSD盘片控制器复位方法,其特征在于,所述判断是否存在与所述IO携带的特征码对应的IO队列的过程,包括:The method for resetting an SSD disk controller according to claim 4, wherein the process of judging whether there is an IO queue corresponding to the feature code carried by the IO comprises:获取所述IO上下文信息中携带的所述特征码;Obtain the feature code carried in the IO context information;判断是否存在与所述特征码对应的IO队列。Determine whether there is an IO queue corresponding to the feature code.
- 根据权利要求1至5任一项所述的SSD盘片控制器复位方法,其特征在于,还包括:The method for resetting an SSD disk controller according to any one of claims 1 to 5, further comprising:接收Host发送的队列删除指令;Receive the queue deletion command sent by the Host;直接根据所述队列删除指令删除相应的IO队列。The corresponding IO queue is deleted directly according to the queue deletion instruction.
- 一种SSD盘片控制器复位系统,其特征在于,应用于前端协议接口模块,包括:An SSD disk controller reset system, characterized in that, applied to a front-end protocol interface module, comprising:IO接收模块,用于接收后端业务模块发送的IO;The IO receiving module is used to receive the IO sent by the back-end business module;特征码判断模块,用于判断是否存在与所述IO携带的特征码对应的IO队列;A feature code judgment module, for judging whether there is an IO queue corresponding to the feature code carried by the IO;IO舍弃模块,用于若所述特征码判断模块判定所述IO队列不存在,则舍弃所述IO。The IO discarding module is configured to discard the IO if the feature code judging module determines that the IO queue does not exist.
- 根据权利要求7所述的SSD盘片控制器复位系统,其特征在于,还包括:The SSD disk controller reset system according to claim 7, further comprising:指令接收模块,用于接收Host的队列创建指令;The instruction receiving module is used to receive the queue creation instruction of the Host;队列创建模块,用于根据所述队列创建指令,创建所述IO队列和所述IO队列的所述特征码;a queue creation module for creating the IO queue and the feature code of the IO queue according to the queue creation instruction;IO请求接收模块,用于接收所述Host发送的IO请求;The IO request receiving module is used to receive the IO request sent by the Host;特征码写入模块,用于将所述特征码写入到所述IO请求中;a feature code writing module for writing the feature code into the IO request;IO请求发送模块,用于通过所述IO队列发送带有所述特征码的所述IO请求至所述后端业务模块。An IO request sending module, configured to send the IO request with the feature code to the back-end business module through the IO queue.
- 一种SSD盘片控制器复位装置,其特征在于,包括:A device for resetting an SSD disk controller, characterized in that it includes:存储器,用于存储计算机程序;memory for storing computer programs;处理器,用于执行所述计算机程序以实现如权利要求1至6任一项所述的SSD盘片控制器复位方法。The processor is configured to execute the computer program to implement the method for resetting an SSD disk controller according to any one of claims 1 to 6.
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的SSD盘片控制器复位方法。A computer-readable storage medium, characterized in that a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the SSD disk according to any one of claims 1 to 6 is implemented Controller reset method.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010616527.2A CN111857579B (en) | 2020-06-30 | 2020-06-30 | SSD disk controller resetting method, SSD disk controller resetting system, SSD disk controller resetting device and readable storage medium |
CN202010616527.2 | 2020-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022001138A1 true WO2022001138A1 (en) | 2022-01-06 |
Family
ID=72989276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/077023 WO2022001138A1 (en) | 2020-06-30 | 2021-02-20 | Ssd disk controller reset method, system and apparatus, and readable storage medium |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111857579B (en) |
WO (1) | WO2022001138A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857579B (en) * | 2020-06-30 | 2024-02-09 | 广东浪潮大数据研究有限公司 | SSD disk controller resetting method, SSD disk controller resetting system, SSD disk controller resetting device and readable storage medium |
CN112612410B (en) * | 2020-12-01 | 2022-12-27 | 苏州浪潮智能科技有限公司 | Method and device for exception handling of commands in solid state disk |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108027642A (en) * | 2015-06-24 | 2018-05-11 | 英特尔公司 | System and method for isolation input/output computing resource |
CN109983449A (en) * | 2018-06-30 | 2019-07-05 | 华为技术有限公司 | The method and storage system of data processing |
US20190317696A1 (en) * | 2018-04-13 | 2019-10-17 | Samsung Electronics Co., Ltd. | METHOD FOR HANDLING COMMAND IN CONFLICT SCENARIO IN NON-VOLATILE MEMORY EXPRESS (NVMe) BASED SOLID-STATE DRIVE (SSD) CONTROLLER |
CN111164566A (en) * | 2018-03-06 | 2020-05-15 | 西部数据技术公司 | Non-volatile memory system with host side command injection |
CN111857579A (en) * | 2020-06-30 | 2020-10-30 | 广东浪潮大数据研究有限公司 | SSD (solid State disk) controller resetting method, system and device and readable storage medium |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100035327A (en) * | 2008-09-26 | 2010-04-05 | 주식회사 엠트론스토리지테크놀로지 | Solid state drive including synchronization system & stabilization method for data of nonvolatile memory |
CN105589758B (en) * | 2014-11-14 | 2019-03-01 | 华为数字技术(成都)有限公司 | A kind of SSD repositioning method and device |
CN104536701B (en) * | 2014-12-23 | 2018-02-06 | 记忆科技(深圳)有限公司 | A kind of realization method and system of the more command queues of NVME agreements |
CN106484549B (en) * | 2015-08-31 | 2019-05-10 | 华为技术有限公司 | A kind of exchange method, NVMe equipment, HOST and physical machine system |
US10521305B2 (en) * | 2016-04-29 | 2019-12-31 | Toshiba Memory Corporation | Holdup time measurement for solid state drives |
CN107818056B (en) * | 2016-09-14 | 2021-09-07 | 华为技术有限公司 | Queue management method and device |
CN106648851A (en) * | 2016-11-07 | 2017-05-10 | 郑州云海信息技术有限公司 | IO management method and device used in multi-controller storage |
CN107239238B (en) * | 2017-07-27 | 2020-09-04 | 郑州云海信息技术有限公司 | Storage IO operation method and device based on distributed lock |
CN107436857A (en) * | 2017-07-31 | 2017-12-05 | 郑州云海信息技术有限公司 | A kind of Enhanced SPI device and the method carried out data transmission using the device |
US10757189B2 (en) * | 2018-04-30 | 2020-08-25 | EMC IP Holding Company LLC | Service level objection based input-output selection utilizing multi-path layer of host device |
CN111124307B (en) * | 2019-12-20 | 2022-06-07 | 北京浪潮数据技术有限公司 | Data downloading and brushing method, device, equipment and readable storage medium |
CN111103960B (en) * | 2019-12-22 | 2021-06-29 | 北京浪潮数据技术有限公司 | Nvme SSD and resetting method and system thereof |
-
2020
- 2020-06-30 CN CN202010616527.2A patent/CN111857579B/en active Active
-
2021
- 2021-02-20 WO PCT/CN2021/077023 patent/WO2022001138A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108027642A (en) * | 2015-06-24 | 2018-05-11 | 英特尔公司 | System and method for isolation input/output computing resource |
CN111164566A (en) * | 2018-03-06 | 2020-05-15 | 西部数据技术公司 | Non-volatile memory system with host side command injection |
US20190317696A1 (en) * | 2018-04-13 | 2019-10-17 | Samsung Electronics Co., Ltd. | METHOD FOR HANDLING COMMAND IN CONFLICT SCENARIO IN NON-VOLATILE MEMORY EXPRESS (NVMe) BASED SOLID-STATE DRIVE (SSD) CONTROLLER |
CN109983449A (en) * | 2018-06-30 | 2019-07-05 | 华为技术有限公司 | The method and storage system of data processing |
CN111857579A (en) * | 2020-06-30 | 2020-10-30 | 广东浪潮大数据研究有限公司 | SSD (solid State disk) controller resetting method, system and device and readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN111857579B (en) | 2024-02-09 |
CN111857579A (en) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6484217B1 (en) | Managing shared devices in a data processing system | |
US8694741B2 (en) | Storage system and method of executing commands by controller | |
WO2018076793A1 (en) | Nvme device, and methods for reading and writing nvme data | |
WO2022001138A1 (en) | Ssd disk controller reset method, system and apparatus, and readable storage medium | |
US8380852B2 (en) | Clearing SCSI reservations for non-detectable initiators for extended duration | |
US20030028731A1 (en) | Block data storage within a computer network | |
TWI703435B (en) | Centralized error handling in application specific integrated circuits | |
US10645164B1 (en) | Consistent latency for solid state drives | |
US11500707B2 (en) | Controller, memory controller, storage device, and method of operating the controller | |
EP3608791A1 (en) | Non-volatile memory switch with host isolation | |
US10013367B2 (en) | I/O processing system including dynamic missing interrupt and input/output detection | |
CN108170446B (en) | Firmware confirmation command processing method and system | |
US9377966B2 (en) | Method and apparatus for efficiently processing storage commands | |
US9612756B1 (en) | Data storage system with parallel handling of sub-I/O requests for individual host I/O requests | |
WO2021174698A1 (en) | Virtual machine snapshot creation method and apparatus, and storage medium and computer device | |
CN116149559A (en) | Queue processing method, device, server, electronic equipment and storage medium | |
US20130013840A1 (en) | Single pipe non-blocking architecture | |
US10037289B1 (en) | Data storage system with efficient processing of single mapping callback for host I/O requests | |
US10776033B2 (en) | Repurposable buffers for target port processing of a data transfer | |
WO2015170702A1 (en) | Storage device, information processing system, storage control method and program | |
CN116010142A (en) | Method, system and device for processing abnormal IO of storage device | |
WO2022151766A1 (en) | Io request pipeline processing device, method and system, and storage medium | |
CN111103960B (en) | Nvme SSD and resetting method and system thereof | |
US8495164B2 (en) | Data transfer device and data transfer method | |
US10585823B2 (en) | Leveling IO |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21833311 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21833311 Country of ref document: EP Kind code of ref document: A1 |