Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 94aa5e5f authored by FUJITA Tomonori's avatar FUJITA Tomonori Committed by James Bottomley
Browse files

[SCSI] aic7xxx_old, eata_pio, ips, libsas: don't zero out sense_buffer in queuecommand



LLDs don't need to zero out scsi_cmnd::sense_buffer in queuecommand
since scsi-ml does. This is a preparation of the future changes to
allocate the sense_buffer only when necessary.

Many LLDs zero out the sense_buffer before touching it on the error
case. This patch lets them alone for now because new APIs for them
would be added later on.

Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: default avatar"Salyzyn, Mark" <Mark_Salyzyn@adaptec.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
parent 382db811
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -10293,7 +10293,6 @@ static int aic7xxx_queue(struct scsi_cmnd *cmd, void (*fn)(struct scsi_cmnd *))
  aic7xxx_position(cmd) = scb->hscb->tag;
  aic7xxx_position(cmd) = scb->hscb->tag;
  cmd->scsi_done = fn;
  cmd->scsi_done = fn;
  cmd->result = DID_OK;
  cmd->result = DID_OK;
  memset(cmd->sense_buffer, 0, sizeof(cmd->sense_buffer));
  aic7xxx_error(cmd) = DID_OK;
  aic7xxx_error(cmd) = DID_OK;
  aic7xxx_status(cmd) = 0;
  aic7xxx_status(cmd) = 0;
  cmd->host_scribble = NULL;
  cmd->host_scribble = NULL;
+0 −1
Original line number Original line Diff line number Diff line
@@ -369,7 +369,6 @@ static int eata_pio_queue(struct scsi_cmnd *cmd,
	cp = &hd->ccb[y];
	cp = &hd->ccb[y];


	memset(cp, 0, sizeof(struct eata_ccb));
	memset(cp, 0, sizeof(struct eata_ccb));
	memset(cmd->sense_buffer, 0, sizeof(cmd->sense_buffer));


	cp->status = USED;	/* claim free slot */
	cp->status = USED;	/* claim free slot */


+0 −3
Original line number Original line Diff line number Diff line
@@ -2736,8 +2736,6 @@ ips_next(ips_ha_t * ha, int intr)
		SC->result = DID_OK;
		SC->result = DID_OK;
		SC->host_scribble = NULL;
		SC->host_scribble = NULL;


		memset(SC->sense_buffer, 0, sizeof (SC->sense_buffer));

		scb->target_id = SC->device->id;
		scb->target_id = SC->device->id;
		scb->lun = SC->device->lun;
		scb->lun = SC->device->lun;
		scb->bus = SC->device->channel;
		scb->bus = SC->device->channel;
@@ -3821,7 +3819,6 @@ ips_send_cmd(ips_ha_t * ha, ips_scb_t * scb)
			/* attempted, a Check Condition occurred, and Sense   */
			/* attempted, a Check Condition occurred, and Sense   */
			/* Data indicating an Invalid CDB OpCode is returned. */
			/* Data indicating an Invalid CDB OpCode is returned. */
			sp = (char *) scb->scsi_cmd->sense_buffer;
			sp = (char *) scb->scsi_cmd->sense_buffer;
			memset(sp, 0, sizeof (scb->scsi_cmd->sense_buffer));


			sp[0] = 0x70;	/* Error Code               */
			sp[0] = 0x70;	/* Error Code               */
			sp[2] = ILLEGAL_REQUEST;	/* Sense Key 5 Illegal Req. */
			sp[2] = ILLEGAL_REQUEST;	/* Sense Key 5 Illegal Req. */
+0 −1
Original line number Original line Diff line number Diff line
@@ -148,7 +148,6 @@ static struct sas_task *sas_create_task(struct scsi_cmnd *cmd,
	if (!task)
	if (!task)
		return NULL;
		return NULL;


	*(u32 *)cmd->sense_buffer = 0;
	task->uldd_task = cmd;
	task->uldd_task = cmd;
	ASSIGN_SAS_TASK(cmd, task);
	ASSIGN_SAS_TASK(cmd, task);