Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 311807
b: refs/heads/master
c: 6ef1b51
h: refs/heads/master
i:
  311805: 9289daa
  311803: 1a0e7ee
  311799: bef3d7b
  311791: a67d905
  311775: c785cf4
  311743: bc59d1c
  311679: 1028bf8
  311551: 606cd78
  311295: de55070
v: v3
  • Loading branch information
Dan Williams authored and James Bottomley committed Jul 8, 2012
1 parent 3daa2ea commit 052eac7
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 10 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 222a806af830fda34ad1f6bc991cd226916de060
refs/heads/master: 6ef1b512f4e6f936d89aa20be3d97a7ec7c290ac
2 changes: 1 addition & 1 deletion trunk/drivers/scsi/aic94xx/aic94xx_task.c
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ static void asd_get_response_tasklet(struct asd_ascb *ascb,

if (SAS_STATUS_BUF_SIZE >= sizeof(*resp)) {
resp->frame_len = le16_to_cpu(*(__le16 *)(r+6));
memcpy(&resp->ending_fis[0], r+16, 24);
memcpy(&resp->ending_fis[0], r+16, ATA_RESP_FIS_SIZE);
ts->buf_valid_size = sizeof(*resp);
}
}
Expand Down
12 changes: 6 additions & 6 deletions trunk/drivers/scsi/libsas/sas_ata.c
Original file line number Diff line number Diff line change
Expand Up @@ -139,12 +139,12 @@ static void sas_ata_task_done(struct sas_task *task)
if (stat->stat == SAS_PROTO_RESPONSE || stat->stat == SAM_STAT_GOOD ||
((stat->stat == SAM_STAT_CHECK_CONDITION &&
dev->sata_dev.command_set == ATAPI_COMMAND_SET))) {
ata_tf_from_fis(resp->ending_fis, &dev->sata_dev.tf);
memcpy(dev->sata_dev.fis, resp->ending_fis, ATA_RESP_FIS_SIZE);

if (!link->sactive) {
qc->err_mask |= ac_err_mask(dev->sata_dev.tf.command);
qc->err_mask |= ac_err_mask(dev->sata_dev.fis[2]);
} else {
link->eh_info.err_mask |= ac_err_mask(dev->sata_dev.tf.command);
link->eh_info.err_mask |= ac_err_mask(dev->sata_dev.fis[2]);
if (unlikely(link->eh_info.err_mask))
qc->flags |= ATA_QCFLAG_FAILED;
}
Expand All @@ -161,8 +161,8 @@ static void sas_ata_task_done(struct sas_task *task)
qc->flags |= ATA_QCFLAG_FAILED;
}

dev->sata_dev.tf.feature = 0x04; /* status err */
dev->sata_dev.tf.command = ATA_ERR;
dev->sata_dev.fis[3] = 0x04; /* status err */
dev->sata_dev.fis[2] = ATA_ERR;
}
}

Expand Down Expand Up @@ -269,7 +269,7 @@ static bool sas_ata_qc_fill_rtf(struct ata_queued_cmd *qc)
{
struct domain_device *dev = qc->ap->private_data;

memcpy(&qc->result_tf, &dev->sata_dev.tf, sizeof(qc->result_tf));
ata_tf_from_fis(dev->sata_dev.fis, &qc->result_tf);
return true;
}

Expand Down
6 changes: 4 additions & 2 deletions trunk/include/scsi/libsas.h
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,8 @@ enum ata_command_set {
ATAPI_COMMAND_SET = 1,
};

#define ATA_RESP_FIS_SIZE 24

struct sata_device {
enum ata_command_set command_set;
struct smp_resp rps_resp; /* report_phy_sata_resp */
Expand All @@ -171,7 +173,7 @@ struct sata_device {

struct ata_port *ap;
struct ata_host ata_host;
struct ata_taskfile tf;
u8 fis[ATA_RESP_FIS_SIZE];
};

enum {
Expand Down Expand Up @@ -537,7 +539,7 @@ enum exec_status {
*/
struct ata_task_resp {
u16 frame_len;
u8 ending_fis[24]; /* dev to host or data-in */
u8 ending_fis[ATA_RESP_FIS_SIZE]; /* dev to host or data-in */
};

#define SAS_STATUS_BUF_SIZE 96
Expand Down

0 comments on commit 052eac7

Please sign in to comment.