summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Bottomley <James.Bottomley@steeleye.com>2005-08-05 23:24:54 +0200
committerJames Bottomley <jejb@mulgrave.(none)>2005-08-05 23:49:15 +0200
commitfc789a93994858b5e5a46afb96d0dcf6cc1b6f08 (patch)
treef83fa07a0dc721a41a7e5d984284b823aa39b261
parent[SCSI] aic7xxx: upport all sequencer and core fixes from adaptec version 6.3.9 (diff)
downloadlinux-fc789a93994858b5e5a46afb96d0dcf6cc1b6f08.tar.xz
linux-fc789a93994858b5e5a46afb96d0dcf6cc1b6f08.zip
[SCSI] aic7xxx/79xx: fix another potential panic due to a non existent target
I ran into this one sending bus resets across the hardware. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-rw-r--r--drivers/scsi/aic7xxx/aic79xx_osm.c4
-rw-r--r--drivers/scsi/aic7xxx/aic7xxx_osm.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c
index 40f32bb23972..acaeebd50465 100644
--- a/drivers/scsi/aic7xxx/aic79xx_osm.c
+++ b/drivers/scsi/aic7xxx/aic79xx_osm.c
@@ -1617,9 +1617,9 @@ ahd_send_async(struct ahd_softc *ahd, char channel,
* are identical to those last reported.
*/
starget = ahd->platform_data->starget[target];
- targ = scsi_transport_target_data(starget);
- if (targ == NULL)
+ if (starget == NULL)
break;
+ targ = scsi_transport_target_data(starget);
target_ppr_options =
(spi_dt(starget) ? MSG_EXT_PPR_DT_REQ : 0)
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c
index e39361ac6a44..3fbc10e58cc2 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_osm.c
+++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c
@@ -1618,9 +1618,9 @@ ahc_send_async(struct ahc_softc *ahc, char channel,
if (channel == 'B')
target_offset += 8;
starget = ahc->platform_data->starget[target_offset];
- targ = scsi_transport_target_data(starget);
- if (targ == NULL)
+ if (starget == NULL)
break;
+ targ = scsi_transport_target_data(starget);
target_ppr_options =
(spi_dt(starget) ? MSG_EXT_PPR_DT_REQ : 0)