summaryrefslogtreecommitdiff
path: root/drivers/scsi/isci/request.h
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2011-05-08 01:56:57 -0700
committerDan Williams <dan.j.williams@intel.com>2011-07-03 04:04:47 -0700
commit0d84366fbef557f92ef82ac9a224c57ffb3318bc (patch)
tree05f0b1ed0896550ee5182d18ea938338b3a99df2 /drivers/scsi/isci/request.h
parent827a84d4e036b342b31abc2bcc3893505c2c7daa (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.h13
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 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#if !defined(_ISCI_REQUEST_H_)
+#ifndef _ISCI_REQUEST_H_
#define _ISCI_REQUEST_H_
#include "isci.h"
+#include "scic_sds_request.h"
/**
* struct isci_request_status - This enum defines the possible states of an I/O
@@ -80,16 +81,8 @@ enum task_type {
tmf_task = 1
};
-/**
- * struct isci_request - This class represents the request object used to track
- * IO, smp and TMF request internal. It wraps the SCIC request object.
- *
- *
- */
struct isci_request {
-
struct scic_sds_request *sci_request_handle;
-
enum isci_request_status status;
enum task_type ttype;
unsigned short io_tag;
@@ -105,7 +98,6 @@ struct isci_request {
struct list_head completed_node;
/* For use in the reqs_in_process list: */
struct list_head dev_node;
- void *sci_request_mem_ptr;
spinlock_t state_lock;
dma_addr_t request_daddr;
dma_addr_t zero_scatter_daddr;
@@ -123,6 +115,7 @@ struct isci_request {
* TMF was aborting is guaranteed to have completed.
*/
struct completion *io_request_completion;
+ struct scic_sds_request sci_req[0] ____cacheline_aligned;
};
/**