isci: fix ssp response iu buffer size in isci_tmf
authorDan Williams <dan.j.williams@intel.com>
Wed, 15 Jun 2011 18:11:03 +0000 (11:11 -0700)
committerDan Williams <dan.j.williams@intel.com>
Sun, 3 Jul 2011 11:04:51 +0000 (04:04 -0700)
In isci_task_request_complete() we save the response/sense data from the
command.  Make sure isci_tmf has enough space to hold the full response.

[ it does not look like we actually use this data, and
  response_data_len/sense_data_len should be specifying the byte count,
  in any event do the simple fix first so we don't corrupt memory ]

Reported-by: Adam Gruchala <adam.gruchala@intel.com>
Tested-by: Edmund Nadolski <edmund.nadolski@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/scsi/isci/task.h

index c8dd075d2be24e046763b83c53e1b86ba5be8297..d574a18956d73b714f90f1ba62aac253ea372ec2 100644 (file)
@@ -100,7 +100,8 @@ struct isci_tmf {
        union {
                struct ssp_response_iu resp_iu;
                struct dev_to_host_fis d2h_fis;
-       }                            resp;
+               u8 rsp_buf[SSP_RESP_IU_MAX_SIZE];
+       } resp;
        unsigned char lun[8];
        u16 io_tag;
        struct isci_remote_device *device;