Re: problems with sata_mv and MV88SX5081 under 2.6.28, fine under 2.6.17.6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eamonn Hamilton wrote:
Hi Mark.

It bisected down to the following:

e3472cbe5c10a91c737405cd706142787736392c is first bad commit
commit e3472cbe5c10a91c737405cd706142787736392c
Author: Albert Lee <albertcc@xxxxxxxxxx>
Date:   Thu Dec 7 11:37:58 2006 +0800

libata: let ATA_FLAG_PIO_POLLING use polling pio for ATA_PROT_NODATA

Even if ATA_FLAG_PIO_POLLING is set, libata uses irq pio for the ATA_PROT_NODATA protocol.
This patch let ATA_FLAG_PIO_POLLING use polling pio for the ATA_PROT_NODATA protocol.

Signed-off-by: Albert Lee <albertcc@xxxxxxxxxx>
Signed-off-by: Jeff Garzik <jeff@xxxxxxxxxx>
---
..
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 8816e30..d2e6863 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -4960,6 +4960,7 @@ unsigned int ata_qc_issue_prot(struct ata_queued_cmd *qc)
	if (ap->flags & ATA_FLAG_PIO_POLLING) {
		switch (qc->tf.protocol) {
		case ATA_PROT_PIO:
+		case ATA_PROT_NODATA:
		case ATA_PROT_ATAPI:
		case ATA_PROT_ATAPI_NODATA:
			qc->tf.flags |= ATA_TFLAG_POLLING;

..
Now, why it dies after that, I don't know, it's one flag being added.

I guess I could try the latest kernel with that removed and see what happens?
..

You certainly could.  That routine is now in libata-sff.c,
but otherwise looks the same as you found it.

Mmm.. I seem to recall seeing some funny biz in this area when
I was working on sata_mv last year.. time to fire up the test rig
and poke around more at this stuff.

Ideally, I'd like to tell sata_mv to use IRQs for all commands,
rather than the polling that the ATA_FLAG_PIO_POLLING induces.
But there was something funny about it at the time, so I left it.

Cheers
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux