Re: [PATCH 10/23] scsi_dh_alua: Pass buffer as function argument

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/22/2015 08:43 PM, Ewan Milne wrote:
> On Thu, 2015-08-27 at 14:41 +0200, Hannes Reinecke wrote:
>> Pass in the buffer as a function argument for submit_rtpg().
>>
>> Reviewed-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
>> Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
>> ---
>>  drivers/scsi/device_handler/scsi_dh_alua.c | 20 ++++++++++----------
>>  1 file changed, 10 insertions(+), 10 deletions(-)
>>
>> diff --git a/drivers/scsi/device_handler/scsi_dh_alua.c b/drivers/scsi/device_handler/scsi_dh_alua.c
>> index 0636721..9e2b3af 100644
>> --- a/drivers/scsi/device_handler/scsi_dh_alua.c
>> +++ b/drivers/scsi/device_handler/scsi_dh_alua.c
>> @@ -137,12 +137,13 @@ static struct request *get_alua_req(struct scsi_device *sdev,
>>   * submit_rtpg - Issue a REPORT TARGET GROUP STATES command
>>   * @sdev: sdev the command should be sent to
>>   */
>> -static unsigned submit_rtpg(struct scsi_device *sdev, struct alua_dh_data *h)
>> +static unsigned submit_rtpg(struct scsi_device *sdev, unsigned char *buff,
>> +			    int bufflen, unsigned char *sense, int flags)
>>  {
>>  	struct request *rq;
>>  	int err = 0;
>>  
>> -	rq = get_alua_req(sdev, h->buff, h->bufflen, READ);
>> +	rq = get_alua_req(sdev, buff, bufflen, READ);
>>  	if (!rq) {
>>  		err = DRIVER_BUSY << 24;
>>  		goto done;
>> @@ -150,22 +151,21 @@ static unsigned submit_rtpg(struct scsi_device *sdev, struct alua_dh_data *h)
>>  
>>  	/* Prepare the command. */
>>  	rq->cmd[0] = MAINTENANCE_IN;
>> -	if (!(h->flags & ALUA_RTPG_EXT_HDR_UNSUPP))
>> +	if (!(flags & ALUA_RTPG_EXT_HDR_UNSUPP))
>>  		rq->cmd[1] = MI_REPORT_TARGET_PGS | MI_EXT_HDR_PARAM_FMT;
>>  	else
>>  		rq->cmd[1] = MI_REPORT_TARGET_PGS;
>> -	put_unaligned_be32(h->bufflen, &rq->cmd[6]);
>> +	put_unaligned_be32(bufflen, &rq->cmd[6]);
>>  	rq->cmd_len = COMMAND_SIZE(MAINTENANCE_IN);
>>  
>> -	rq->sense = h->sense;
>> +	rq->sense = sense;
>>  	memset(rq->sense, 0, SCSI_SENSE_BUFFERSIZE);
>> -	rq->sense_len = h->senselen = 0;
>> +	rq->sense_len = 0;
>>  
>>  	blk_execute_rq(rq->q, NULL, rq, 1);
>> -	if (rq->errors) {
>> +	if (rq->errors)
>>  		err = rq->errors;
>> -		h->senselen = rq->sense_len;
>> -	}
>> +
>>  	blk_put_request(rq);
>>  done:
>>  	return err;
>> @@ -491,7 +491,7 @@ static int alua_rtpg(struct scsi_device *sdev, struct alua_dh_data *h, int wait_
>>  		expiry = round_jiffies_up(jiffies + h->transition_tmo * HZ);
>>  
>>   retry:
>> -	retval = submit_rtpg(sdev, h);
>> +	retval = submit_rtpg(sdev, h->buff, h->bufflen, h->sense, h->flags);
>>  
>>  	if (retval) {
>>  		if (!scsi_normalize_sense(h->sense, SCSI_SENSE_BUFFERSIZE,
> 
> This patch also removes the setting of h->senselen, you should mention
> that in the patch description.  Or, perhaps the removal of h->senselen
> should have been done as part of patch 12/23, which removed the senselen
> field (and the sense buffer field) from the alua_dh_data structure.

Is already done with the next version of the patchset.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare@xxxxxxx			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux