summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorDarrick J. Wong <djwong@us.ibm.com>2007-01-30 10:18:41 +0100
committerJames Bottomley <jejb@mulgrave.localdomain>2007-07-18 18:15:13 +0200
commit1c50dc83f9ca752b1e1b985f1ce33d2695103ffa (patch)
treefba4621565a87272d1232281b9457c297d53ea04 /include
parent[SCSI] sas_ata: sas_ata_qc_issue should return AC_ERR_* (diff)
downloadlinux-1c50dc83f9ca752b1e1b985f1ce33d2695103ffa.tar.xz
linux-1c50dc83f9ca752b1e1b985f1ce33d2695103ffa.zip
[SCSI] sas_ata: ata_post_internal should abort the sas_task
This patch adds a new field, lldd_task, to ata_queued_cmd so that libata users such as libsas can associate some data with a qc. The particular ambition with this patch is to associate a sas_task with a qc; that way, if libata decides to timeout a command, we can come back (in sas_ata_post_internal) and abort the sas task. One question remains: Is it necessary to reset the phy on error, or will the libata error handler take care of it? (Assuming that one is written, of course.) This patch, as it is today, works well enough to clean things up when an ATA device probe attempt fails halfway through the probe, though I'm not sure this is always the right thing to do. Signed-off-by: Darrick J. Wong <djwong@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/libata.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 47cd2a1c5544..4abb758a0450 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -411,6 +411,7 @@ struct ata_queued_cmd {
ata_qc_cb_t complete_fn;
void *private_data;
+ void *lldd_task;
};
struct ata_port_stats {