摘要 |
Systems and methods in accordance with various embodiments can manage transfer ready resources of one or more physical targets to avoid deadlock of a storage switch or storage area network when attempting to write data to a mirrored virtual target. When writing data to a mirrored virtual target, a storage switch simultaneously or synchronously routes data from an initiator to multiple physical locations, such as multiple physical targets. A switch or network can become deadlocked while waiting to receive a transfer ready resource from each of the physical targets involved in the operation. In accordance with an embodiment, a storage switch determines the availability of a transfer ready resource from a physical target prior to issuing a write command to the target. In this manner, the switch can ensure that the target will be available to issue a transfer ready signal when a write command is issued, thus alleviating potential deadlock situations. In accordance with one embodiment, a resource table can be used to store an indication of the availability of transfer ready resources from one or more targets. The resource table can be updated as transfer ready resources are allocated to incoming commands. In one embodiment, a circular first in/first out buffer can be used to queue information relating to write commands for mirrored virtual targets.
|