IP Library Granted Patent US 8,762,658
Granted Patent B2
US 8,762,658 · App. 13/566,471 · Granted Jun 24, 2014

Systems and methods for persistent deallocation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,762,658
App. No.
13/566,471
Granted
Jun 24, 2014
Kind
B2
Abstract

An apparatus, system, and method are disclosed for managing data with an empty data segment directive at the storage device. The apparatus, system, and method for managing data include a write request receiver module and a data segment token storage module. The write request receiver module receives a storage request from a requesting device. The storage request includes a request to store a data segment in a storage device. The data segment includes a series of repeated, identical characters or a series of repeated, identical character strings. The data segment token storage module stores a data segment token in the storage device. The data segment token includes at least a data segment identifier and a data segment length. The data segment token is substantially free of data from the data segment.

Claims (40)

1. An apparatus for managing data stored on a non-volatile storage medium, comprising:

a non-volatile storage medium;

a request receiver module configured to receive a message comprising a logical identifier, the message indicating that data associated with the logical identifier has been erased, wherein the logical identifier is mapped to a physical storage location of the non-volatile storage medium; and

a storage module configured to store persistent data on the non-volatile storage medium in response to the indication, wherein the persistent data is configured to indicate that the data associated with the logical identifier is erased.

2. The apparatus of claim 1 , further comprising an index reconstruction module configured to reconstruct mappings between logical identifiers and physical storage locations of the non-volatile storage medium from contents of the non-volatile storage medium, wherein the reconstruction module is configured indicate that data of the logical identifier are erased based on the persistent data stored on the non-volatile storage medium.

3. The apparatus of claim 1 , further comprising:

an index comprising mappings between logical identifiers and physical storage locations of the non-volatile storage medium; and

an index reconstruction module configured to reconstruct the mappings using contents of the non-volatile storage medium, wherein the index reconstruction module is configured to indicate that data associated with the logical identifier are erased based on the persistent data stored on the non-volatile storage medium.

4. The apparatus of claim 1 , further comprising:

an index comprising a plurality of index entries comprising mappings between logical identifiers and physical storage locations of the non-volatile storage medium; and

an index reconstruction module configured to reconstruct the index entries from data stored on the non-volatile storage medium, wherein the index reconstruction module is configured to record an indication that data associated with the logical identifier are erased based on the persistent data stored on the non-volatile storage medium.

5. The apparatus of claim 4 , wherein the index reconstruction module is configured to update the index to indicate that the data associated with the logical identifier are erased.

6. The apparatus of claim 4 , wherein the indication comprises an index entry.

7. The apparatus of claim 4 , wherein the indication comprises removing an entry from the index.

8. The apparatus of claim 1 , further comprising a read request module configured to return an indication that the data of the logical identifier are erased in response a request pertaining to the logical identifier received while the data associated with the logical identifier remains on the physical storage location of the non-volatile storage medium.

9. The apparatus of claim 1 , further comprising a marking module configured to record that contents of the physical storage location associated with the logical identifier no longer need to be retained on a non-volatile storage medium in response to the indication.

10. The apparatus of claim 1 , further comprising a marking module configured to invalidate an index entry configured to associate the logical identifier with the physical storage location in response to the indication.

11. The apparatus of claim 1 , further comprising a storage recovery module configured to recover a storage division comprising the physical storage location in response to the indication.

12. The apparatus of claim 1 , further comprising an erase module configured to erase the physical storage location in response to the indication.

13. A system, comprising:

a processor;

an index module configured for operation on the processor, wherein the index module is configured to maintain an index comprising associations between logical identifiers and physical storage locations used to store data corresponding to the logical identifiers on a non-volatile storage medium;

a request receiver module configured to receive a hint comprising a logical identifier, wherein the hint is configured to indicate that data of the logical identifier associated with a physical storage location in the index has been deleted; and

a storage module configured to store a packet on the non-volatile storage medium configured to indicate that contents of the physical storage location have been deleted in response to the hint.

14. The system of claim 13 , further comprising an index module configured to update the index to invalidate the association between the logical identifier and the physical storage location in response to the hint.

15. The system of claim 14 , wherein the index module is configured to remove an entry that maps the logical identifier to the physical storage location from the index in response to the hint.

16. The system of claim 13 , further comprising an index reconstruction module configured to reconstruct the associations between the logical identifiers and the physical storage locations, wherein the index reconstruction module is configured to record that data associated with the logical identifier has been deleted based on the packet.

17. The system of claim 13 , wherein the packet comprises one of an erase packet and a data segment token.

18. The system of claim 13 , wherein the packet indicates that data of a plurality of logical identifiers have been deleted.

19. The system of claim 13 , further comprising a storage controller, wherein the storage controller comprises the processor.

20. The system of claim 13 , wherein the non-volatile storage medium comprises a flash storage medium.

21. The system of claim 13 , wherein the non-volatile storage medium comprises a NAND flash storage medium.

22. A non-transitory computer-readable storage medium comprising instructions configured to cause a computing device to perform a method, comprising:

maintaining an index comprising mappings between logical identifiers and physical storage locations of a non-volatile storage device;

receiving an indication, comprising a logical identifier, that the logical identifier mapped to a physical storage location comprising data associated with the logical identifier in the index is empty; and

recording persistent data on the non-volatile storage device in response the indication, wherein the persistent data is configured to indicate that the logical identifier is empty.

23. The non-transitory computer-readable storage medium of claim 22 , the method further comprising invalidating a data packet in response to the indication.

24. The non-transitory computer-readable storage medium of claim 22 , the method further comprising removing the mapping between the logical identifier and the physical storage location from the index in response to the indication.

25. The non-transitory computer-readable storage medium of claim 22 , the method further comprising reconstructing the index based on the contents of the non-volatile storage medium, wherein reconstructing comprises determining that the logical identifier is empty in response to the persistent data recorded on the non-volatile storage device while the data associated with the logical identifier remains on the physical storage location.

26. The non-transitory computer-readable storage medium of claim 22 , further comprising responding to a request pertaining to the logical identifier with an indication the logical identifier is empty while the data associated with the logical identifier remains on the physical storage location.

Assignments (16)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 053654 FRAME: 0254. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 15, 2021
From: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
To: UNIFICATION TECHNOLOGIES LLC
Reel/Frame 058134/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE PATENT SECURITY AGREEMENT. Recorded Nov 15, 2021
From: UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 058223/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2020
From: FIO SEMICONDUCTOR TECHNOLOGIES, LLC
To: ACACIA RESEARCH GROUP LLC
Reel/Frame 052095/0903 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2020
From: ACACIA RESEARCH GROUP LLC
To: UNIFICATION TECHNOLOGIES LLC
Reel/Frame 052096/0225 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT DOCUMENT FILED PREVIOUSLY RECORDED ON REEL 047702 FRAME 0413. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 16, 2019
From: LONGITUDE ENTERPRISE FLASH S.A.R.I.
To: FIO SEMICONDUCTOR TECHNOLOGIES, LLC
Reel/Frame 048918/0035 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2018
From: LONGITUDE ENTERPRISE FLASH S.A.R.I.
To: FIO SEMICONDUCTOR TECHNOLOGIES LIMITED
Reel/Frame 047702/0413 →
RELEASE OF SECURITY INTEREST Recorded May 4, 2016
From: FUSION-IO, INC.
To: SANDISK CORPORATION
Reel/Frame 038748/0880 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2016
From: INTELLIGENT INTELLECTUAL PROPERTY HOLDINGS 2 LLC
To: PS12 LUXCO S.A.R.L.
Reel/Frame 038362/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2016
From: PS12 LUXCO S.A.R.L.
To: LONGITUDE ENTERPRISE FLASH S.A.R.L.
Reel/Frame 038362/0604 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2014
From: FUSION-IO, INC.
To: INTELLIGENT INTELLECTUAL PROPERTY HOLDINGS 2 LLC
Reel/Frame 033419/0748 →
SECURITY INTEREST Recorded Jul 24, 2014
From: INTELLIGENT INTELLECTUAL PROPERTY HOLDINGS 2 LLC
To: FUSION-IO, INC.
Reel/Frame 033410/0158 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2014
From: FUSION-IO, INC.
To: INTELLECTUAL PROPERTY HOLDINGS 2 LLC
Reel/Frame 033389/0511 →
CHANGE OF NAME Recorded Aug 16, 2012
From: FUSION MULTISYSTEMS, INC. DBA FUSION-IO
To: FUSION-IO, INC.
Reel/Frame 028802/0131 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2012
From: FLYNN, DAVID; THATCHER, JONATHAN; ZAPPE, MICHAEL
To: FUSION MULTISYSTEMS, INC. DBA FUSION-IO
Reel/Frame 028800/0340 →