IP Library Granted Patent US 9,519,427
Granted Patent B2
US 9,519,427 · App. 14/621,219 · Granted Dec 13, 2016

Triggering, at a host system, a process to reduce declared capacity of a storage device

Inventors: Allen Samuels (San Jose, CA); Warren Fritz Kruger (Sunnyvale, CA); Linh Tien Truong (San Jose, CA)
Assignee: SANDISK TECHNOLOGIES LLC
G06F3/0608G06F3/0661G06F3/0688G06F12/0238G06F12/0246G06F12/0253G06F2212/7201G06F2212/7204G06F2212/7205
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 9,519,427
App. No.
14/621,219
Granted
Dec 13, 2016
Kind
B2
Abstract

Systems, methods and/or devices are used to enable triggering, at a host system, a process to reduce declared capacity of a storage device. In one aspect, the method includes, at a host to which a storage device of the storage system is operatively coupled: (1) obtaining one or more metrics of the storage device, the storage device including non-volatile memory, (2) detecting a trigger condition in accordance with the one or more metrics of the storage device, and (3) enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device. In some embodiments, the storage device includes one or more flash memory devices.

Claims (49)

1. A method of managing a storage system, the method comprising:

at a host to which a storage device of the storage system is operatively coupled:

obtaining one or more metrics of the storage device, the storage device including non-volatile memory;

detecting a trigger condition in accordance with the one or more metrics of the storage device;

enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device, wherein declared capacity is storage capacity available to the host;

prior to detecting the trigger condition, detecting a first wear condition of the non-volatile memory of the storage device, wherein a total storage capacity of the non-volatile memory of the storage device includes declared capacity and over-provisioning; and

in response to detecting the first wear condition, performing a remedial action that reduces over-provisioning of the non-volatile memory of the storage device without reducing declared capacity of the non-volatile memory of the storage device.

2. The method of claim 1 , wherein detecting the trigger condition comprises detecting a second wear condition distinct from the first wear condition.

3. The method of claim 1 , wherein the host includes a client on behalf of which data is stored in the storage system.

4. The method of claim 1 , wherein the host includes a cluster controller of the storage system.

5. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes scheduling the amelioration process to be performed on the storage device.

6. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes determining one or more parameters for the amelioration process.

7. The method of claim 6 , wherein enabling the amelioration process associated with the detected trigger condition further includes conveying at least a subset of the one or more parameters for the amelioration process to the storage device.

8. The method of claim 1 , wherein obtaining one or more metrics of the storage device includes obtaining at least one metric, of the one or more metrics, for each memory portion of a plurality of memory portions of the storage device.

9. The method of claim 1 , wherein the one or more metrics of the storage device include one or more status metrics corresponding to the storage device's ability to retain data.

10. The method of claim 1 , wherein the one or more metrics of the storage device include one or more performance metrics corresponding to performance of the storage device.

11. The method of claim 1 , wherein the one or more metrics of the storage device include one or more wear metrics corresponding to wear on the storage device.

12. The method of claim 1 , wherein the one or more metrics of the storage device include one or more time metrics.

13. The method of claim 1 , wherein the one or more metrics of the storage device include values of the one or more metrics from more than one time.

14. The method of claim 1 , further comprising:

after enabling the amelioration process,

re-evaluating the trigger condition in accordance with the one or more metrics of the storage device, and

in accordance with a determination that the trigger condition is no longer valid, aborting the amelioration process to reduce declared capacity of the non-volatile memory of the storage device.

15. The method of claim 1 , wherein the amelioration process to reduce declared capacity of the non-volatile memory of the storage device includes a process to reduce utilization of the non-volatile memory of the storage device.

16. The method of claim 1 , wherein the storage device comprises one or more flash memory devices.

17. A storage system, comprising:

one or more storage devices; and

a host to which the one or more storage devices are operatively coupled, the host including:

one or more processors; and

host memory storing one or more programs, which when executed by the one or more processors cause the host to perform operations comprising:

obtaining one or more metrics of a storage device of the one or more storage devices, the storage device including non-volatile memory;

detecting a trigger condition in accordance with the one or more metrics of the storage device;

enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device, wherein declared capacity is storage capacity available to the host;

prior to detecting the trigger condition, detecting a first wear condition of the non-volatile memory of the storage device, wherein a total storage capacity of the non-volatile memory of the storage device includes declared capacity and over-provisioning; and

in response to detecting the first wear condition, performing a remedial action that reduces over-provisioning of the non-volatile memory of the storage device without reducing declared capacity of the non-volatile memory of the storage device.

18. The storage system of claim 17 , wherein detecting the trigger condition comprises detecting a second wear condition distinct from the first wear condition.

19. The storage system of claim 17 , wherein the one or more metrics of the storage device include one or more status metrics corresponding to the storage device's ability to retain data.

20. The storage system of claim 17 , wherein the one or more metrics of the storage device include one or more performance metrics corresponding to performance of the storage device.

21. The storage system of claim 17 , wherein the storage device comprises one or more flash memory devices.

22. A non-transitory computer readable storage medium, storing one or more programs configured for execution by one or more processors of a host system, the one or more programs including instructions for:

obtaining one or more metrics of a storage device coupled to the host system, the storage device including non-volatile memory;

detecting a trigger condition in accordance with the one or more metrics of the storage device;

enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device, wherein declared capacity is storage capacity available to the host;

prior to detecting the trigger condition, detecting a first wear condition of the non-volatile memory of the storage device, wherein a total storage capacity of the non-volatile memory of the storage device includes declared capacity and over-provisioning; and

in response to detecting the first wear condition, performing a remedial action that reduces over-provisioning of the non-volatile memory of the storage device without reducing declared capacity of the non-volatile memory of the storage device.

23. The non-transitory computer readable storage medium of claim 22 , wherein detecting the trigger condition comprises detecting a second wear condition distinct from the first wear condition.

24. The non-transitory computer readable storage medium of claim 22 , wherein the one or more metrics of the storage device include one or more status metrics corresponding to the storage device's ability to retain data.

25. The non-transitory computer readable storage medium of claim 22 , wherein the one or more metrics of the storage device include one or more performance metrics corresponding to performance of the storage device.

26. The non-transitory computer readable storage medium of claim 22 , wherein the storage device comprises one or more flash memory devices.

Assignments (5)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0807 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2015
From: SAMUELS, ALLEN; KRUGER, WARREN FRITZ; TRUONG, LINH TIEN
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 035085/0216 →
Continuity (2)
Provisional Application 62044919 · Sep 2, 2014
Related Publication 20160062664A1 · Mar 3, 2016