Patent ID: 9176677
Filing Date: 2015-11-03
Classification: G06F,H04L

Abstract:
1. A method for reserving storage space in a thin provisioning environment, comprising: maintaining a thin provisioning storage system having a plurality of thin devices and having a storage pool shared among a plurality of input/output (I/O) requesting devices, wherein each of the plurality of thin devices of the thin provisioning storage system presents to the I/O requesting devices an amount of storage space of the storage pool as being available and appearing pre-allocated to the I/O requesting devices for I/O operations, but wherein the thin provisioning storage system actually allocates the storage space from the storage pool only when requested by the I/O requesting devices to service I/O requests; receiving, at a reservation entity that is a reservation device, a space reservation request from a first thin device of the plurality of thin devices, wherein the space reservation request identifies an amount of space requested for reservation for the first thin device from the storage pool, wherein the space reservation request is received prior to an I/O request sent by a first I/O requesting device of the plurality of I/O requesting devices requesting allocation of space from the storage pool of the thin provisioning storage system in connection with an I/O operation of the first I/O requesting device; using the reservation entity to reserve space in the storage pool corresponding to the space reservation request from the first thin device, wherein the reserved space in the storage pool that is reserved by the reservation entity is usable for the first thin device and is not yet allocated to the first thin device, wherein the first thin device is one of a plurality of subscribing devices that subscribe to the reservation entity, wherein subscribing to the reservation entity enables the reservation entity to make available only to the plurality of subscribing devices reserved space in the storage pool that is designated by the reservation entity and is not yet allocated to any of the plurality of subscribing devices; and using the reservation entity in connection with allocating space in the thin provisioning storage system to service the I/O request involving the first I/O requesting device and the first thin device, wherein the I/O request is separate from the space reservation request, and wherein the I/O request corresponds to the I/O operation that is serviced using allocated space that is allocated from the storage pool for the first thin device, wherein the reserved space is allocated to service the I/O request only when sufficient free unallocated space in the storage pool to service the I/O request is unavailable, the free unallocated space being space that is not reserved by the reservation entity.