summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sata_qstor.c
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2005-12-06 10:52:48 +0100
committerJeff Garzik <jgarzik@pobox.com>2005-12-06 10:52:48 +0100
commit701db69d6647f61e4660c9102d7f2fd5dffc203d (patch)
treee3ebe94f72b4bbdfad608d77d7b11719022b8c9b /drivers/scsi/sata_qstor.c
parentMerge branch 'master' (diff)
parent[PATCH] libata: err_mask misc fix (diff)
downloadlinux-701db69d6647f61e4660c9102d7f2fd5dffc203d.tar.xz
linux-701db69d6647f61e4660c9102d7f2fd5dffc203d.zip
Merge branch 'upstream'
Diffstat (limited to 'drivers/scsi/sata_qstor.c')
-rw-r--r--drivers/scsi/sata_qstor.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/scsi/sata_qstor.c b/drivers/scsi/sata_qstor.c
index 17a39ed62306..6367966941d6 100644
--- a/drivers/scsi/sata_qstor.c
+++ b/drivers/scsi/sata_qstor.c
@@ -170,7 +170,7 @@ static const struct ata_port_operations qs_ata_ops = {
.bmdma_status = qs_bmdma_status,
};
-static struct ata_port_info qs_port_info[] = {
+static const struct ata_port_info qs_port_info[] = {
/* board_2068_idx */
{
.sht = &qs_ata_sht,
@@ -408,8 +408,8 @@ static inline unsigned int qs_intr_pkt(struct ata_host_set *host_set)
case 3: /* device error */
pp->state = qs_state_idle;
qs_enter_reg_mode(qc->ap);
- ata_qc_complete(qc,
- ac_err_mask(sDST));
+ qc->err_mask |= ac_err_mask(sDST);
+ ata_qc_complete(qc);
break;
default:
break;
@@ -446,7 +446,8 @@ static inline unsigned int qs_intr_mmio(struct ata_host_set *host_set)
/* complete taskfile transaction */
pp->state = qs_state_idle;
- ata_qc_complete(qc, ac_err_mask(status));
+ qc->err_mask |= ac_err_mask(status);
+ ata_qc_complete(qc);
handled = 1;
}
}