Claims
- 1. A method for processing a I/O request, comprising the steps of:
receiving an I/O request from a host; generating a scatter gather list according to parameters of the I/O request; dividing the I/O request from the host into a plurality of physical I/O requests; and performing each of the plurality of physical I/O requests in conjunction with the scatter gather list, wherein data is transferable to and from a disk array.
- 2. The method of claim 1, the disk array forming a redundant array of independent disks (RAID).
- 3. The method of claim 2, the RAID being in conformance with the specification for RAID 0.
- 4. The method of claim 3, the RAID being in conformance with the specification for RAID 1E.
- 5. The method of claim 1, the scatter gather list being traversed to provide data for each of the plurality of physical I/O requests.
- 6. The method of claim 1, each of the plurality of physical I/O requests corresponding to a data stripe, the data stripes being one of either a first size or a second size, the second size being greater than or equal to 64K.
- 7. The method of claim 1, in which dividing the single host I/O request into multiple physical I/O requests is accomplished through parameters including a number of bytes of an initial block of data, a number of bytes to skip prior to transferring data, a number of bytes in a single stripe, and an amount of bytes to skip after transferring the stripe of the data.
- 8. The method of claim 1, in which dividing the single host I/O request into multiple physical I/O requests is accomplished through parameters including a set of absolute start and end addresses of contiguous memory.
- 9. The method of claim 8, the set of absolute start and end addresses define host memory from which the data is transferred to the disk array.
- 10. The method of claim 8, in which the set of absolute start and end addresses define memory or determine where data is to be stored when transferred from the disk drives to a host memory.
- 11. The method of claim 1, in which dividing the single host I/O request into multiple physical I/O requests is accomplished through a single parameter of an amount of bytes to skip after transferring the stripe of data.
- 12. A system of data transfer in a disk array system, comprising:
a host device for issuing a host I/O request and generating a scatter gather list; a disk array controller having a datapath engine for converting the host I/O request into multiple physical 1 (O requests and for traversing the scatter gather list, coupled to the host device; and a disk array having two or more disks, coupled to the disk array controller.
- 13. The system of claim 12, the disk array for storing data being in conformance with the specification for RAID 0.
- 14. The system of claim 12, the disk array for storing data being in conformance with the specification for RAID 1E.
- 15. The system of claim 12, the scatter gather list using a parameter.
- 16. The system of claim 15, the parameter being an amount of bytes to skip.
- 17. The system of claim 12, the scatter gather list including a set of pointers.
- 18. The system of claim 12, the single scatter gather list including a set of start addresses and end addresses.
- 19. The system of claim 12, the single scatter gather list including a set of start addresses and number of bytes at each of the start addresses.
- 20. A system of data transfer in a redundant array of independent disks (RAID) system, comprising:
means for generating multiple physical I/O requests from a host I/O request; means for traversing a scatter gather list; and means for transferring data between disk drives of the RAID system and the host device using the means for traversing the scatter gather list and the means for generating multiple physical I/O requests in which each of the multiple physical I/O requests results in the transfer of data to or from a data stripe on one of the disk drives.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] The present invention is a continuation-in-part of U.S. patent application Ser. No. 09/795,825, entitled “Method and Apparatus for RAID Striped Data Transfer”, filed Feb. 28, 2001, herein incorporated by reference.
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09795825 |
Feb 2001 |
US |
Child |
10184667 |
Jun 2002 |
US |