Claims
- 1. A method of setting a plurality of table entries in a storage device, comprising:
subdividing the table entries into a N tasks; placing each of the N tasks in a memory location disposed within the storage device and accessible by a plurality of internal devices; the plurality of the internal devices accessing the memory location to retrieve at least one of the N tasks; and each of the plurality of the internal devices setting table entries corresponding to at least one of the N tasks retrieved from the memory location.
- 2. A method, according to claim 1, wherein setting table entries includes setting logical device table entries to indicate corresponding tracks contain invalid data in connection with operation of remote data transfer between multiple storage devices.
- 3. A method, according to claim 1, wherein at least some of the internal devices include devices for handling remote data transfer between multiple storage devices.
- 4. A method, according to claim 3, wherein at least some of the internal devices are disk adapters and host adapters of the storage device.
- 5. A method, according to claim 1, wherein the memory location corresponds to a queue.
- 6. A method, according to claim 1, further comprising:
following setting table entries corresponding to at least one of the N tasks, providing an indicator in the memory location that the at least one of the N tasks has been completed.
- 7. A method, according to claim 6, further comprising:
at least one of the internal devices placing the N tasks in the memory location and monitoring the memory location for the indicators indicating that each of the N tasks have been successfully completed.
- 8. A method, according to claim 7, further comprising:
the at least one of the internal devices replacing a particular one of the tasks in the memory location in response to absence of an indicator indicating successful completion for the particular one of the tasks after a predetermined amount of time.
- 9. A method, according to claim 1, wherein setting device table entries includes obtaining a hardware lock corresponding to each of the device table entries to be set.
- 10. A method, according to claim 1, wherein setting device table entries includes:
in response to a particular entry not being in cache, obtaining a hardware lock for the particular entry.
- 11. A method, according to claim 10, further comprising:
in response to the particular entry being in cache, obtaining a software lock for the entry.
- 12. A method, according to claim 10, further comprising:
in response to the particular entry being in cache, marking the particular entry for later processing.
- 13. A method, according to claim 12, wherein the later processing includes waiting for the entry to not be in cache and then obtaining the hardware lock for the entry.
- 14. A computer program product that sets a plurality of table entries in a storage device, comprising:
executable code that subdivides the table entries into a N tasks; executable code that places each of the N tasks in a memory location disposed within the storage device and accessible by a plurality of internal devices; executable code that accesses the memory location on behalf of the internal storage devices to retrieve at least one of the N tasks; and executable code that sets table entries corresponding to at least one of the N tasks retrieved from the memory location on behalf of each of the plurality of the internal devices.
- 15. A computer program product, according to claim 14, wherein executable code that sets table entries includes executable code that sets logical device table entries to indicate corresponding tracks contain invalid data in connection with operation of remote data transfer between multiple storage devices.
- 16. A computer program product, according to claim 14, wherein the memory location corresponds to a queue.
- 17. A computer program product, according to claim 14, further comprising:
executable code that provides an indicator in the memory location that the at least one of the N tasks has been completed following setting table entries corresponding to at least one of the N tasks.
- 18. A computer program product, according to claim 17, further comprising:
executable code that monitors the memory location for the indicators indicating that each of the N tasks have been successfully completed.
- 19. A computer program product, according to claim 18, further comprising:
executable code that replaces a particular one of the tasks in the memory location in response to absence of an indicator indicating successful completion for the particular one of the tasks after a predetermined amount of time.
- 20. A computer program product, according to claim 14, wherein executable code that sets device table entries includes executable code that obtains a hardware lock corresponding to each of the device table entries to be set.
- 21. A computer program product, according to claim 14, wherein executable code that sets device table entries includes executable code that obtains a hardware lock for the particular entry in response to a particular entry not being in cache.
- 22. A computer program product, according to claim 21, further comprising:
executable code that obtains a software lock for the entry in response to the particular entry being in cache.
- 23. A computer program product, according to claim 21, further comprising:
executable code that marks the particular entry for later processing in response to the particular entry being in cache.
- 24. A computer program product, according to claim 23, wherein the later processing includes waiting for the entry to not be in cache and then obtaining the hardware lock for the entry.
- 25. An apparatus that sets a plurality of table entries in a storage device, comprising:
means for subdividing the table entries into a N tasks; means for placing each of the N tasks in a memory location disposed within the storage device and accessible by a plurality of internal devices; means for the internal devices to access the memory location to retrieve at least one of the N tasks; and means for each of the plurality of the internal devices to set table entries corresponding to at least one of the N tasks retrieved from the memory location.
- 26. An apparatus, according to claim 25, wherein means for the internal devices to set table entries includes means for setting logical device table entries to indicate corresponding tracks contain invalid data in connection with operation of remote data transfer between multiple storage devices.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation in part of U.S. patent application Ser. No. 09/997,810, filed on Nov. 30, 2001 (pending), which is incorporated by reference herein and which claims priority to U.S. provisional patent application No. 60/332,991, filed on Nov. 14, 2001.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60332991 |
Nov 2001 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09997810 |
Nov 2001 |
US |
Child |
10224006 |
Aug 2002 |
US |