PATCH: fix scsi parts of iph5526

From: Alan Cox (alan@lxorguk.ukuu.org.uk)
Date: Fri Feb 14 2003 - 16:03:34 EST


diff -u --new-file --recursive --exclude-from /usr/src/exclude linux-2.5.60-ref/drivers/net/fc/iph5526.c linux-2.5.60-ac1/drivers/net/fc/iph5526.c
--- linux-2.5.60-ref/drivers/net/fc/iph5526.c 2003-02-14 21:45:55.000000000 +0000
+++ linux-2.5.60-ac1/drivers/net/fc/iph5526.c 2003-02-14 19:23:45.000000000 +0000
@@ -3913,9 +3913,9 @@
 int int_required = 0;
 u_int r_ctl = FC4_DEVICE_DATA | UNSOLICITED_COMMAND;
 u_int type = TYPE_FCP | SEQUENCE_INITIATIVE;
-u_int frame_class = Cmnd->target;
+u_int frame_class = Cmnd->device->id;
 u_short ox_id = OX_ID_FIRST_SEQUENCE;
-struct Scsi_Host *host = Cmnd->host;
+struct Scsi_Host *host = Cmnd->device->host;
 struct iph5526_hostdata *hostdata = (struct iph5526_hostdata*)host->hostdata;
 struct fc_info *fi = hostdata->fi;
 struct fc_node_info *q;
@@ -3937,9 +3937,9 @@
                                 hostdata->cmnd.fcp_cntl = FCP_CNTL_QTYPE_ORDERED;
                                 break;
                         default:
- if ((jiffies - hostdata->tag_ages[Cmnd->target]) > (5 * HZ)) {
+ if ((jiffies - hostdata->tag_ages[Cmnd->device->id]) > (5 * HZ)) {
                                         hostdata->cmnd.fcp_cntl = FCP_CNTL_QTYPE_ORDERED;
- hostdata->tag_ages[Cmnd->target] = jiffies;
+ hostdata->tag_ages[Cmnd->device->id] = jiffies;
                                 }
                                 else
                                         hostdata->cmnd.fcp_cntl = FCP_CNTL_QTYPE_SIMPLE;
@@ -3953,7 +3953,7 @@
         hostdata->cmnd.fcp_addr[3] = 0;
         hostdata->cmnd.fcp_addr[2] = 0;
         hostdata->cmnd.fcp_addr[1] = 0;
- hostdata->cmnd.fcp_addr[0] = htons(Cmnd->lun);
+ hostdata->cmnd.fcp_addr[0] = htons(Cmnd->device->lun);
 
         memcpy(&hostdata->cmnd.fcp_cdb, Cmnd->cmnd, Cmnd->cmd_len);
         hostdata->cmnd.fcp_data_len = htonl(Cmnd->request_bufflen);
@@ -3985,7 +3985,7 @@
         
         memcpy(fi->q.ptr_fcp_cmnd[fi->q.fcp_cmnd_indx], &(hostdata->cmnd), sizeof(fcp_cmd));
         
- q = resolve_target(fi, Cmnd->target);
+ q = resolve_target(fi, Cmnd->device->id);
 
         if (q == NULL) {
         u_int bad_id = fi->g.my_ddaa | 0xFE;
@@ -4022,7 +4022,7 @@
 
 int iph5526_abort(Scsi_Cmnd *Cmnd)
 {
-struct Scsi_Host *host = Cmnd->host;
+struct Scsi_Host *host = Cmnd->device->host;
 struct iph5526_hostdata *hostdata = (struct iph5526_hostdata *)host->hostdata;
 struct fc_info *fi = hostdata->fi;
 struct fc_node_info *q;
@@ -4036,7 +4036,7 @@
         
         spin_lock_irqsave(&fi->fc_lock, flags);
         
- q = resolve_target(fi, Cmnd->target);
+ q = resolve_target(fi, Cmnd->device->id);
         if (q == NULL) {
         u_int bad_id = fi->g.my_ddaa | 0xFE;
                 /* This should not happen as we should always be able to
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Feb 15 2003 - 22:00:58 EST