Systems and methods can provide mirrored virtual targets and online
synchronization and verification of the targets while avoiding deadlock,
inconsistencies between members of the target, and false verification
failures. A lock within the storage switch can limit the number of
outstanding commands for a physical target to one during synchronization
and verification operations. In one embodiment, a lock can be implemented
as one or more resource tables maintaining an indication of the number of
transfer ready signals available from physical targets. During typical
write operations, deadlock can be avoided by determining whether each
physical target for the mirrored operation can issue a transfer ready
signal prior to issuing a command to the physical target. When a
synchronization or verification operation begins, the maximum available
number of transfer ready signals for each target can be decremented to
one in order to limit the total number of outstanding commands for each
target to one.