Patent ID: 7328364
Filing Date: 2008-02-05
Classification: G06F

Abstract:
1. A method for suspending input/output (I/O) operations executed by a subsystem of a storage system, comprising: constructing an I/O tree that accommodates a flow of I/O operations through the subsystem and targeted to the object; imposing a freeze condition on an object of a the I/O tree representing a logical configuration of storage devices coupled to the storage system; instantiating raidio structures used to communicate with the objects of the configuration tree, the objects having configuration interfaces defining services provided by a process of the subsystem; providing an I/O thread having a receive list to process the instantiated raidio structures; invoking accounting procedures each time a raidio structure is instantiated; enabling in flight I/O operations directed to the object to reach a recoverable state in the event the subsystem subsequently fails; blocking new I/O requests directed to the object at the subsystem until the freeze condition is lifted; incrementing a per-object activity counter in response to dequeuing of a raidio structure from a receive list of the I/O thread; and decrementing the per-object activity counter in response to completion of processing of the raidio structure.