Flash-based block storage system with trimmed space management and method of operation thereof
AssigneeSMART Modular Technologies, Inc.
InventorsVictor Y. Tsai, Robert Fillion
Life of this patent
Estimating the term…
Abstract
Approaches, techniques, and mechanisms are disclosed for a method of operation of a Flash-based block storage system including: transferring a first data to a logical block address; storing the first data in a physical block, of a storage array, associated with the logical block address; receiving a trim command for the logical block address; establishing a reserved physical block associated with the logical block address of the trim command; transferring second data for writing to the logical block address of the trim command; releasing the reserved physical block associated with the logical block address; and writing the second data to the logical block address.
Claims20
A method comprising:
- establishing a reservation identifying a reserved physical block region having a range of contiguous reserved physical block addresses;
- receiving a trim command for a logical block address associated with a target physical block located within the reserved physical block region;
- releasing an association between the target physical block and the logical block address of the trim command, and designating the target physical block a reserved physical block;
- updating a mapping table to prevent a write operation to the reserved physical block based on the reservation indicating the reserved block is in the reserved block region;
- and
- writing a user data to the contiguous reserved physical block addresses after releasing the reservation of the reserved physical block region.
A method comprising:
- storing a mapping between a host logical address range and a physical address range in a storage system;
- receiving a trim command specifying the host logical address range;
- establishing a reservation identifying the physical address range having a range of contiguous reserved physical block addresses;
- responsive to the trim command, marking a portion of the physical address range mapped to the host logical address range as reserved in the reservation;
- blocking a maintenance task write operation to the physical address range based on the reservation;
- subsequent to the trim command, receiving a write request for the host logical address range;
- releasing the reservation of the physical address range mapped to the host logical address range;
- and
- responsive to the write request, based on the releasing of the reservation, writing data specified by the write request to physical address range.
A Flash-based block storage system comprising:
- a system interface;
- a data engine coupled to the system interface;
- a storage array coupled to the data engine;
- and
- a device processor, coupled to the data engine, configured to:
- establish a reservation identifying a reserved physical block region having a range of contiguous reserved physical block addresses,
- receive a trim command for a logical block address associated with a target physical block located within the reserved physical block region;
- release the association between the target physical block and the logical block address of the trim command, and designate the target physical block a reserved physical block;
- update a mapping table to prevent a write operation to the reserved physical block based on the reservation indicating the reserved block is in the reserved block region;
- and
- write a user data to the contiguous reserved physical block addresses after releasing the reservation of the reserved physical block region.
Dependencies are inferred from the claim text.