Data Storage Deadlock Recovery via Link Layer Re-establishment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data storage devices, such as SSDs and HDDs, often experience deadlocks where communication links between the device and the host become stuck, leading to time-consuming reboots, data loss, and errors, with existing solutions requiring rebooting which is inefficient and error-prone.
Innovation Solution
A data storage device equipped with a controller and processor that detects deadlocks and transmits recovery commands to re-establish link layer connections, using a timer to determine deadlock conditions and sending recovery commands through the transport layer to resolve communication link issues without rebooting.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the host or data storage device is rebooted to resolve a deadlock, then the communication link is re-established, but time is lost and data may be lost or corrupted
Solution Approach 1:
The system performs preliminary deadlock detection by monitoring communication link status and identifying deadlock conditions before they cause data loss or require reboot. The controller continuously checks for deadlock states and prepares recovery commands in advance, allowing rapid resolution without full system reboot.
Solution Approach 2:
The data storage device performs self-diagnosis and self-recovery from deadlock conditions. The controller detects deadlocks internally and autonomously transmits recovery commands to the host or re-establishes connections without requiring external intervention or system reboot, enabling the system to service itself.
2Reliability
If the host or data storage device is rebooted to resolve a deadlock, then the communication link is re-established, but data loss and errors occur
Solution Approach 1:
The system detects deadlocks before they result in data loss by continuously monitoring communication link status. Recovery commands are prepared and transmitted promptly upon detection, preventing the deadlock from progressing to a state where data corruption or loss occurs.
Solution Approach 2:
The system implements protective measures by maintaining alternative communication paths and buffering data during deadlock recovery. The controller preserves data integrity by preventing incomplete transmissions and ensuring data is not lost during the recovery process from deadlock.
3Productivity
If a recovery command is transmitted to resolve a deadlock, then the link layer connection is re-established quickly, but the system must detect and respond to deadlock conditions
Solution Approach 1:
The controller implements feedback mechanisms by continuously monitoring communication link status and detecting deadlock conditions through response analysis. The system sends commands and monitors for expected responses, using the lack of proper responses as feedback to identify deadlock states and trigger recovery procedures.
Solution Approach 2:
The data storage device autonomously detects deadlocks and manages its own recovery without external intervention. The controller independently monitors link health, identifies deadlock conditions, and executes recovery commands, enabling self-service operation that maintains productivity without adding significant complexity.
Data Source
AI summary
Aspects of the disclosure provide a data storage device that includes a non-volatile memory and a controller. The controller includes a memory and a processor. The processor is configured to determine whether there is a deadlock in a communication link between the data storage apparatus and a host; and transmit, when there is a deadlock in the communication link between the data storage apparatus and the host, a recovery command to the host to re-establish a link layer connection between the data storage apparatus and the host.


