diff options
author | Dan Williams <dan.j.williams@intel.com> | 2011-05-08 04:56:57 -0400 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2011-07-03 07:04:47 -0400 |
commit | 0d84366fbef557f92ef82ac9a224c57ffb3318bc (patch) | |
tree | 05f0b1ed0896550ee5182d18ea938338b3a99df2 /drivers/scsi/isci/request.h | |
parent | 827a84d4e036b342b31abc2bcc3893505c2c7daa (diff) |
isci: make sgl explicit/aligned request object member
Towards unifying request objects we need all members to be defined in the
object and not carved out of anonymous buffer space.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/scsi/isci/request.h')
-rw-r--r-- | drivers/scsi/isci/request.h | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/scsi/isci/request.h b/drivers/scsi/isci/request.h index 9c97715e54d8..ddfbf71c97e5 100644 --- a/drivers/scsi/isci/request.h +++ b/drivers/scsi/isci/request.h | |||
@@ -53,10 +53,11 @@ | |||
53 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 53 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
54 | */ | 54 | */ |
55 | 55 | ||
56 | #if !defined(_ISCI_REQUEST_H_) | 56 | #ifndef _ISCI_REQUEST_H_ |
57 | #define _ISCI_REQUEST_H_ | 57 | #define _ISCI_REQUEST_H_ |
58 | 58 | ||
59 | #include "isci.h" | 59 | #include "isci.h" |
60 | #include "scic_sds_request.h" | ||
60 | 61 | ||
61 | /** | 62 | /** |
62 | * struct isci_request_status - This enum defines the possible states of an I/O | 63 | * struct isci_request_status - This enum defines the possible states of an I/O |
@@ -80,16 +81,8 @@ enum task_type { | |||
80 | tmf_task = 1 | 81 | tmf_task = 1 |
81 | }; | 82 | }; |
82 | 83 | ||
83 | /** | ||
84 | * struct isci_request - This class represents the request object used to track | ||
85 | * IO, smp and TMF request internal. It wraps the SCIC request object. | ||
86 | * | ||
87 | * | ||
88 | */ | ||
89 | struct isci_request { | 84 | struct isci_request { |
90 | |||
91 | struct scic_sds_request *sci_request_handle; | 85 | struct scic_sds_request *sci_request_handle; |
92 | |||
93 | enum isci_request_status status; | 86 | enum isci_request_status status; |
94 | enum task_type ttype; | 87 | enum task_type ttype; |
95 | unsigned short io_tag; | 88 | unsigned short io_tag; |
@@ -105,7 +98,6 @@ struct isci_request { | |||
105 | struct list_head completed_node; | 98 | struct list_head completed_node; |
106 | /* For use in the reqs_in_process list: */ | 99 | /* For use in the reqs_in_process list: */ |
107 | struct list_head dev_node; | 100 | struct list_head dev_node; |
108 | void *sci_request_mem_ptr; | ||
109 | spinlock_t state_lock; | 101 | spinlock_t state_lock; |
110 | dma_addr_t request_daddr; | 102 | dma_addr_t request_daddr; |
111 | dma_addr_t zero_scatter_daddr; | 103 | dma_addr_t zero_scatter_daddr; |
@@ -123,6 +115,7 @@ struct isci_request { | |||
123 | * TMF was aborting is guaranteed to have completed. | 115 | * TMF was aborting is guaranteed to have completed. |
124 | */ | 116 | */ |
125 | struct completion *io_request_completion; | 117 | struct completion *io_request_completion; |
118 | struct scic_sds_request sci_req[0] ____cacheline_aligned; | ||
126 | }; | 119 | }; |
127 | 120 | ||
128 | /** | 121 | /** |