Submission Queue Entry Overflow via Metadata Pointers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing submission queue entry format in storage devices is limited, leaving little room for additional data, as most bits are allocated for specific purposes, making it difficult to include extra information without modifying the queue size, which could impact compatibility and efficiency.
Innovation Solution
The solution involves using metadata structures like Physical Region Pages (PRP) and Scatter Gather Lists (SGL) to store additional data related to commands, allowing for the repurposing of unused bits to indicate the presence of additional data, thereby expanding the capacity of submission queue entries without increasing their size.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the submission queue entry size is increased to include more data, then the data capacity is improved, but the compatibility and efficiency are worsened
Solution Approach 1:
The submission queue entry is divided into two parts: a fixed-size header (64 bytes) that maintains compatibility with existing storage devices, and a variable-length metadata section that stores additional data. The metadata section is accessed through pointers contained in the header, allowing the system to segment data storage while maintaining a stable interface protocol.
Solution Approach 2:
Metadata structures act as intermediaries between the host and storage device. These metadata sections, accessed via pointers in the submission queue entry, serve as a bridge to carry additional data without modifying the core submission queue entry format, thus preserving compatibility while enabling extended functionality.
2Loss of information
If more fields are added to the submission queue entry, then the information completeness is improved, but the space for additional host data is worsened
Solution Approach 1:
Instead of adding more fields to the existing 64-byte submission queue entry structure, the patent adds a new dimension by introducing metadata sections that are accessed through pointers. This allows the system to store additional information in a separate dimensional space (metadata sections) rather than expanding the original structure, thereby preserving space for host data while increasing information completeness.
3Adaptability or versatility
If the submission queue entry format is modified to include additional data, then the data handling capability is improved, but the backward compatibility is worsened
Solution Approach 1:
The submission queue entry format is made dynamic through the use of pointers. The header remains static and compatible with existing devices, while the metadata section can be dynamically added or removed based on the specific data handling requirements. This dynamic structure allows the system to adapt to new data handling capabilities without forcing changes to the core format, thus maintaining backward compatibility.
Data Source
AI summary
A memory is disclosed. The memory may include a first data structure. The first data structure may include a field, which may store a first pointer to a second data structure. The second data structure may include a second pointer to a data relating to a command and a third pointer to a user data. The memory may also include a queue that may include the first data structure.


