Staging: hv: Move the context field from struct hv_storvsc_request
authorK. Y. Srinivasan <kys@microsoft.com>
Mon, 28 Mar 2011 16:33:40 +0000 (09:33 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 5 Apr 2011 04:55:10 +0000 (21:55 -0700)
In preparation of consolidating all I/O request state, move
the context field from struct hv_storvsc_request to
struct storvsc_request_extension.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
Signed-off-by: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/hv/blkvsc_drv.c
drivers/staging/hv/storvsc_api.h
drivers/staging/hv/storvsc_drv.c

index 54c966f31a3cab9baccacb39acc32f991c32fb7a..3d061dc5609d71c44fc7f9abb5eced1fed076c65 100644 (file)
@@ -941,7 +941,7 @@ static int blkvsc_submit_request(struct blkvsc_request *blkvsc_req,
        vm_srb->data_in = blkvsc_req->write ? WRITE_TYPE : READ_TYPE;
 
        storvsc_req->on_io_completion = request_completion;
-       storvsc_req->context = blkvsc_req;
+       storvsc_req->extension.context = blkvsc_req;
 
        vm_srb->port_number = blkdev->port;
        vm_srb->path_id = blkdev->path;
@@ -1138,7 +1138,7 @@ static int blkvsc_do_request(struct block_device_context *blkdev,
 static void blkvsc_cmd_completion(struct hv_storvsc_request *request)
 {
        struct blkvsc_request *blkvsc_req =
-                       (struct blkvsc_request *)request->context;
+                       (struct blkvsc_request *)request->extension.context;
        struct block_device_context *blkdev =
                        (struct block_device_context *)blkvsc_req->dev;
        struct scsi_sense_hdr sense_hdr;
@@ -1160,7 +1160,7 @@ static void blkvsc_cmd_completion(struct hv_storvsc_request *request)
 static void blkvsc_request_completion(struct hv_storvsc_request *request)
 {
        struct blkvsc_request *blkvsc_req =
-                       (struct blkvsc_request *)request->context;
+                       (struct blkvsc_request *)request->extension.context;
        struct block_device_context *blkdev =
                        (struct block_device_context *)blkvsc_req->dev;
        unsigned long flags;
index fd9165f674dabed35f047aae57e02c9b259b3cff..68c5036ecdadfd1e6ec746a082d3fc77c4effb8e 100644 (file)
@@ -63,6 +63,7 @@ struct storvsc_request_extension {
        struct completion wait_event;
 
        unsigned char *sense_buffer;
+       void *context;
 
        struct vstor_packet vstor_packet;
 };
@@ -71,8 +72,6 @@ struct hv_storvsc_request {
        u32 status;
        u32 bytes_xfer;
 
-       void *context;
-
        void (*on_io_completion)(struct hv_storvsc_request *request);
 
        struct storvsc_request_extension extension;
index 3a999d057b4327ef8f0f6cf54a4e7ef030e95f0f..65e03e63da325e3d5ac6adc046645aaefb9782b2 100644 (file)
@@ -448,7 +448,7 @@ static int storvsc_remove(struct device *device)
 static void storvsc_commmand_completion(struct hv_storvsc_request *request)
 {
        struct storvsc_cmd_request *cmd_request =
-               (struct storvsc_cmd_request *)request->context;
+               (struct storvsc_cmd_request *)request->extension.context;
        struct scsi_cmnd *scmnd = cmd_request->cmd;
        struct host_device_context *host_device_ctx =
                (struct host_device_context *)scmnd->device->host->hostdata;
@@ -771,7 +771,7 @@ static int storvsc_queuecommand_lck(struct scsi_cmnd *scmnd,
        }
 
        request->on_io_completion = storvsc_commmand_completion;
-       request->context = cmd_request;/* scmnd; */
+       request->extension.context = cmd_request;/* scmnd; */
 
        /* request->PortId = scmnd->device->channel; */
        vm_srb->port_number = host_device_ctx->port;