]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/2.6.35.9/libsas-fix-ncq-mixing-with-non-ncq.patch
drop drm patch
[thirdparty/kernel/stable-queue.git] / releases / 2.6.35.9 / libsas-fix-ncq-mixing-with-non-ncq.patch
1 From f0ad30d3d2dc924decc0e10b1ff6dc32525a5d99 Mon Sep 17 00:00:00 2001
2 From: David Milburn <dmilburn@redhat.com>
3 Date: Fri, 3 Sep 2010 17:13:03 -0500
4 Subject: [SCSI] libsas: fix NCQ mixing with non-NCQ
5
6 From: David Milburn <dmilburn@redhat.com>
7
8 commit f0ad30d3d2dc924decc0e10b1ff6dc32525a5d99 upstream.
9
10 Some cards (like mvsas) have issue troubles if non-NCQ commands are
11 mixed with NCQ ones. Fix this by using the libata default NCQ check
12 routine which waits until all NCQ commands are complete before issuing
13 a non-NCQ one. The impact to cards (like aic94xx) which don't need
14 this logic should be minimal
15
16 Signed-off-by: James Bottomley <James.Bottomley@suse.de>
17 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18
19 ---
20 drivers/scsi/libsas/sas_ata.c | 1 +
21 1 file changed, 1 insertion(+)
22
23 --- a/drivers/scsi/libsas/sas_ata.c
24 +++ b/drivers/scsi/libsas/sas_ata.c
25 @@ -347,6 +347,7 @@ static int sas_ata_scr_read(struct ata_l
26 static struct ata_port_operations sas_sata_ops = {
27 .phy_reset = sas_ata_phy_reset,
28 .post_internal_cmd = sas_ata_post_internal,
29 + .qc_defer = ata_std_qc_defer,
30 .qc_prep = ata_noop_qc_prep,
31 .qc_issue = sas_ata_qc_issue,
32 .qc_fill_rtf = sas_ata_qc_fill_rtf,