The SCSI maintainer wants to wait until 2.6.25 for this obvious data
corruption fix.
I vehemently disagree.
Please pull from 'sas-fixes' branch of
master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6.git sas-fixes
to receive the following updates:
drivers/scsi/aic94xx/aic94xx_task.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
Jeff Garzik (1):
aic94xx: fix DMA data direction for SMP requests
diff --git a/drivers/scsi/aic94xx/aic94xx_task.c b/drivers/scsi/aic94xx/aic94xx_task.c
index d5d8cab..ab13824 100644
--- a/drivers/scsi/aic94xx/aic94xx_task.c
+++ b/drivers/scsi/aic94xx/aic94xx_task.c
@@ -451,7 +451,7 @@ static int asd_build_smp_ascb(struct asd_ascb *ascb, struct sas_task *task,
struct scb *scb;
pci_map_sg(asd_ha->pcidev, &task->smp_task.smp_req, 1,
- PCI_DMA_FROMDEVICE);
+ PCI_DMA_TODEVICE);
pci_map_sg(asd_ha->pcidev, &task->smp_task.smp_resp, 1,
PCI_DMA_FROMDEVICE);
@@ -486,7 +486,7 @@ static void asd_unbuild_smp_ascb(struct asd_ascb *a)
BUG_ON(!task);
pci_unmap_sg(a->ha->pcidev, &task->smp_task.smp_req, 1,
- PCI_DMA_FROMDEVICE);
+ PCI_DMA_TODEVICE);
pci_unmap_sg(a->ha->pcidev, &task->smp_task.smp_resp, 1,
PCI_DMA_FROMDEVICE);
}
On Tue, 2007-10-02 at 13:21 -0400, Jeff Garzik wrote:
> The SCSI maintainer wants to wait until 2.6.25 for this obvious data
That's 2.6.24 ... and that's not what I said. I said I wanted to take
it via scsi-misc into 2.6.24 and then take it via the stable tree for
2.6.23.x
> corruption fix.
>
> I vehemently disagree.
Sure, I'll state my case: This is a bug, but it has no affected users,
nor will it because the aic94xx doesn't work on non-x86 architectures by
reason of other longstanding bugs (and TODEVICE/FROMDEVICE only matters
to architecures which use dma_map_sg to program the IOMMU). Given that
we're at -rc9 and counting every patch towards stabilisation, I see no
benefit to adding this to the tree because the benefit to users is zero
and the detriment from code churn at this stage is potentially non-zero.
My recommendation is still to follow what I propose: take it via
scsi-misc to 2.6.24-rc1 and then back to 2.5.23.x
James
James Bottomley wrote:
> Sure, I'll state my case: This is a bug, but it has no affected users,
> nor will it because the aic94xx doesn't work on non-x86 architectures by
> reason of other longstanding bugs (and TODEVICE/FROMDEVICE only matters
False. It fails to work on _some_ non-x86 platforms.
Jeff
On Tue, 2007-10-02 at 14:53 -0400, Jeff Garzik wrote:
> James Bottomley wrote:
> > Sure, I'll state my case: This is a bug, but it has no affected users,
> > nor will it because the aic94xx doesn't work on non-x86 architectures by
> > reason of other longstanding bugs (and TODEVICE/FROMDEVICE only matters
>
> False. It fails to work on _some_ non-x86 platforms.
OK, it fails to work on everything I can test, which is parisc, ia64 and
ppc. However, I'm fairly certain there are no other non-x86 users
because we have no bug reports.
James