diff options
| -rw-r--r-- | drivers/scsi/aacraid/aachba.c | 6 | ||||
| -rw-r--r-- | drivers/scsi/aacraid/aacraid.h | 4 | ||||
| -rw-r--r-- | drivers/scsi/aacraid/linit.c | 7 | 
3 files changed, 6 insertions, 11 deletions
| diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c index f9deab686dc..fc16fe0dfa8 100644 --- a/drivers/scsi/aacraid/aachba.c +++ b/drivers/scsi/aacraid/aachba.c @@ -365,7 +365,6 @@ static void get_container_name_callback(void *context, struct fib * fibptr)  	struct scsi_cmnd * scsicmd;  	scsicmd = (struct scsi_cmnd *) context; -	scsicmd->SCp.phase = AAC_OWNER_MIDLEVEL;  	if (!aac_valid_context(scsicmd, fibptr))  		return; @@ -629,9 +628,9 @@ int aac_probe_container(struct aac_dev *dev, int cid)  	if (_aac_probe_container(scsicmd, aac_probe_container_callback1) == 0)  		while (scsicmd->device == scsidev)  			schedule(); +	kfree(scsidev);  	status = scsicmd->SCp.Status;  	kfree(scsicmd); -	kfree(scsidev);  	return status;  } @@ -1321,7 +1320,6 @@ static void io_callback(void *context, struct fib * fibptr)  	u32 cid;  	scsicmd = (struct scsi_cmnd *) context; -	scsicmd->SCp.phase = AAC_OWNER_MIDLEVEL;  	if (!aac_valid_context(scsicmd, fibptr))  		return; @@ -1571,7 +1569,6 @@ static void synchronize_callback(void *context, struct fib *fibptr)  	struct scsi_cmnd *cmd;  	cmd = context; -	cmd->SCp.phase = AAC_OWNER_MIDLEVEL;  	if (!aac_valid_context(cmd, fibptr))  		return; @@ -2127,7 +2124,6 @@ static void aac_srb_callback(void *context, struct fib * fibptr)  	struct scsi_cmnd *scsicmd;  	scsicmd = (struct scsi_cmnd *) context; -	scsicmd->SCp.phase = AAC_OWNER_MIDLEVEL;  	if (!aac_valid_context(scsicmd, fibptr))  		return; diff --git a/drivers/scsi/aacraid/aacraid.h b/drivers/scsi/aacraid/aacraid.h index 2c0994b448d..1771851db6e 100644 --- a/drivers/scsi/aacraid/aacraid.h +++ b/drivers/scsi/aacraid/aacraid.h @@ -12,8 +12,8 @@   *----------------------------------------------------------------------------*/  #ifndef AAC_DRIVER_BUILD -# define AAC_DRIVER_BUILD 2423 -# define AAC_DRIVER_BRANCH "-mh3" +# define AAC_DRIVER_BUILD 2437 +# define AAC_DRIVER_BRANCH "-mh4"  #endif  #define MAXIMUM_NUM_CONTAINERS	32 diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c index 3cf3f6472e9..a5950c17d62 100644 --- a/drivers/scsi/aacraid/linit.c +++ b/drivers/scsi/aacraid/linit.c @@ -260,7 +260,6 @@ static int aac_queuecommand(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd  		    (cmd->SCp.phase == AAC_OWNER_FIRMWARE))  			return 0; /* Already owned by Adapter */  	} -	cmd->scsi_done = done;  	cmd->SCp.phase = AAC_OWNER_LOWLEVEL;  	return (aac_scsi_cmd(cmd) ? FAILED : 0);  }  @@ -461,15 +460,15 @@ static int aac_ioctl(struct scsi_device *sdev, int cmd, void __user * arg)  static int aac_eh_abort(struct scsi_cmnd* cmd)  { -	struct Scsi_Host * host = cmd->device->host; +	struct scsi_device * dev = cmd->device; +	struct Scsi_Host * host = dev->host;  	struct aac_dev * aac = (struct aac_dev *)host->hostdata;  	int count;  	int ret = FAILED;  	printk(KERN_ERR "%s: Host adapter abort request (%d,%d,%d,%d)\n",  		AAC_DRIVERNAME, -		cmd->device->host->host_no, sdev_channel(cmd->device), -		sdev_id(cmd->device), cmd->device->lun); +		host->host_no, sdev_channel(dev), sdev_id(dev), dev->lun);  	switch (cmd->cmnd[0]) {  	case SERVICE_ACTION_IN:  		if (!(aac->raw_io_interface) || | 
