US 12,430,053 B2
Data block allocation for storage system
Shuyi Shao, Saratoga, CA (US); Yuhong Mao, Fremont, CA (US); and Peter E. Kirkpatrick, Los Altos, CA (US)
Assigned to PURE STORAGE, INC., Santa Clara, CA (US)
Filed by PURE STORAGE, INC, Mountain View, CA (US)
Filed on Apr. 18, 2023, as Appl. No. 18/302,604.
Application 18/302,604 is a continuation of application No. 17/200,037, filed on Mar. 12, 2021, granted, now 11,630,593.
Prior Publication US 2023/0342056 A1, Oct. 26, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/064 (2013.01) [G06F 3/0619 (2013.01); G06F 3/0631 (2013.01); G06F 3/0644 (2013.01); G06F 3/0652 (2013.01); G06F 3/067 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A system, comprising:
a plurality of managed flash storage devices; and
a storage system controller operatively coupled and external to the plurality of managed flash storage devices, wherein the plurality of managed flash storage devices offload management responsibilities to the storage system controller, the storage system controller comprising a processing device configured to:
select a free block from a pool of candidate free blocks that are unallocated for storing data;
determine whether a number of bit flips of data stored at the free block is below a threshold; and
in response determining that the number of bit flips of the data stored at the free block is below the threshold, add the free block to a pool of active free blocks to be allocated for the storage of data.