Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[linux-2.6-microblaze.git] / drivers / scsi / ibmvscsi / ibmvfc.c
index 01f7999..d0eab57 100644 (file)
@@ -1046,7 +1046,7 @@ static void ibmvfc_scsi_eh_done(struct ibmvfc_event *evt)
 
        if (cmnd) {
                scsi_dma_unmap(cmnd);
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
        }
 
        ibmvfc_free_event(evt);
@@ -1849,7 +1849,7 @@ static void ibmvfc_scsi_done(struct ibmvfc_event *evt)
                        cmnd->result = (DID_ERROR << 16);
 
                scsi_dma_unmap(cmnd);
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
        }
 
        ibmvfc_free_event(evt);
@@ -1935,7 +1935,7 @@ static int ibmvfc_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *cmnd)
        if (unlikely((rc = fc_remote_port_chkready(rport))) ||
            unlikely((rc = ibmvfc_host_chkready(vhost)))) {
                cmnd->result = rc;
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
                return 0;
        }
 
@@ -1975,7 +1975,7 @@ static int ibmvfc_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *cmnd)
                            "Failed to map DMA buffer for command. rc=%d\n", rc);
 
        cmnd->result = DID_ERROR << 16;
-       cmnd->scsi_done(cmnd);
+       scsi_done(cmnd);
        return 0;
 }
 
@@ -3589,18 +3589,20 @@ static struct bin_attribute ibmvfc_trace_attr = {
 };
 #endif
 
-static struct device_attribute *ibmvfc_attrs[] = {
-       &dev_attr_partition_name,
-       &dev_attr_device_name,
-       &dev_attr_port_loc_code,
-       &dev_attr_drc_name,
-       &dev_attr_npiv_version,
-       &dev_attr_capabilities,
-       &dev_attr_log_level,
-       &dev_attr_nr_scsi_channels,
+static struct attribute *ibmvfc_host_attrs[] = {
+       &dev_attr_partition_name.attr,
+       &dev_attr_device_name.attr,
+       &dev_attr_port_loc_code.attr,
+       &dev_attr_drc_name.attr,
+       &dev_attr_npiv_version.attr,
+       &dev_attr_capabilities.attr,
+       &dev_attr_log_level.attr,
+       &dev_attr_nr_scsi_channels.attr,
        NULL
 };
 
+ATTRIBUTE_GROUPS(ibmvfc_host);
+
 static struct scsi_host_template driver_template = {
        .module = THIS_MODULE,
        .name = "IBM POWER Virtual FC Adapter",
@@ -3621,7 +3623,7 @@ static struct scsi_host_template driver_template = {
        .this_id = -1,
        .sg_tablesize = SG_ALL,
        .max_sectors = IBMVFC_MAX_SECTORS,
-       .shost_attrs = ibmvfc_attrs,
+       .shost_groups = ibmvfc_host_groups,
        .track_queue_depth = 1,
        .host_tagset = 1,
 };