Patent ID: 8924442

Claim:
A method for storage allocation and reclamation in a storage device, comprising: creating a physical storage allocation state map that indicates whether a plurality of data blocks comprising a range of data is allocated or unallocated in a shared storage device, wherein a default state of the physical storage allocation state map indicates no allocated storage for the plurality of data blocks; consulting a free extent state map to identify free data blocks of the shared storage device, wherein the free extent state map is separate from the physical storage allocation state map; performing an allocation operation causing the shared storage device to allocate storage over a requested range of allocation, wherein the allocation operation preferentially allocates storage to a first plurality of data blocks that are marked as free blocks in the free extent state map and as having been allocated in the physical storage allocation state map; updating the physical storage allocation state map in accordance with the requested range of allocation; upon a subsequent reclamation process, accessing the physical storage allocation state map to identify a second plurality of data blocks that are marked as free blocks in the free extent state map and as having been allocated in the physical storage allocation state map; and performing reclamation processing on the identified second plurality of data blocks that are marked as free blocks in the free extent state map and as having been allocated in the physical storage allocation state map.