2007-08-15 12:44:39

by Zoltan Boszormenyi

[permalink] [raw]
Subject: Bad CD disk disables IDE DMA

Hi,

I noticed that a bad CD of mine makes DMA disabled:

hda: selected mode 0x44
hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
ide: failed opcode was: unknown
hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
ide: failed opcode was: unknown
hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
ide: failed opcode was: unknown
hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
ide: failed opcode was: unknown
hda: DMA disabled
hda: ide_intr: huh? expected NULL handler on exit
hda: ATAPI reset complete

Every time I put the said CD into to drive and DMA is on, I get the
above messages.
Two things are interesting: first, it gets mounted correctly and
readable and
second, when DMA was already disabled no such messages occur in the logs.
Anyhow, I would need DMA to correctly burn CDs/DVDs...
What can I do besides manually re-enable DMA?
All other disks I have tried behave perfectly.
This happened on 2.6.22[-rcX], 2.6.23-rc3-git1 and 2.6.20-1.2962.fc6.
This is on a Fedora Core 6 system. CD/DVD is using the old IDE drivers:

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
NFORCE-MCP55: IDE controller at PCI slot 0000:00:04.0
NFORCE-MCP55: chipset revision 161
NFORCE-MCP55: not 100% native mode: will probe irqs later
NFORCE-MCP55: BIOS didn't set cable bits correctly. Enabling workaround.
NFORCE-MCP55: 0000:00:04.0 (rev a1) UDMA133 controller
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
Probing IDE interface ide0...
hda: PIONEER DVD-RW DVR-111L, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
ide-floppy driver 0.99.newide

$ cat /proc/ide/amd74xx
----------AMD BusMastering IDE Configuration----------------
Driver Version: 2.13
South Bridge: 0000:00:04.0
Revision: IDE 0xa1
Highest DMA rate: UDMA133
BM-DMA base: 0xf000
PCI clock: 33.3MHz
-----------------------Primary IDE-------Secondary IDE------
Prefetch Buffer: yes yes
Post Write Buffer: yes yes
Enabled: yes no
Simplex only: no yes
Cable Type: 80w 80w
-------------------drive0----drive1----drive2----drive3-----
Transfer Mode: PIO DMA DMA DMA
Address Setup: 30ns 90ns 90ns 90ns
Cmd Active: 90ns 90ns 300ns 300ns
Cmd Recovery: 30ns 30ns 300ns 300ns
Data Active: 90ns 330ns 330ns 330ns
Data Recovery: 30ns 270ns 270ns 270ns
Cycle Time: 120ns 600ns 600ns 600ns
Transfer Rate: 16.6MB/s 3.3MB/s 3.3MB/s 3.3MB/s

Best regards,
Zolt?n B?sz?rm?nyi



2007-08-16 08:17:55

by Michal Piotrowski

[permalink] [raw]
Subject: Re: Bad CD disk disables IDE DMA

Hi Zoltan,

On 15/08/07, Zoltan Boszormenyi <[email protected]> wrote:
> Hi,
>
> I noticed that a bad CD of mine makes DMA disabled:
>
> hda: selected mode 0x44
> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
> ide: failed opcode was: unknown
> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
> ide: failed opcode was: unknown
> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
> ide: failed opcode was: unknown
> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
> ide: failed opcode was: unknown
> hda: DMA disabled
> hda: ide_intr: huh? expected NULL handler on exit
> hda: ATAPI reset complete
>
> Every time I put the said CD into to drive and DMA is on, I get the
> above messages.

This might be intended.

> Two things are interesting: first, it gets mounted correctly and
> readable and
> second, when DMA was already disabled no such messages occur in the logs.
> Anyhow, I would need DMA to correctly burn CDs/DVDs...
> What can I do besides manually re-enable DMA?
> All other disks I have tried behave perfectly.
> This happened on 2.6.22[-rcX], 2.6.23-rc3-git1 and 2.6.20-1.2962.fc6.
> This is on a Fedora Core 6 system. CD/DVD is using the old IDE drivers:
>
> Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
> ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
> NFORCE-MCP55: IDE controller at PCI slot 0000:00:04.0
> NFORCE-MCP55: chipset revision 161
> NFORCE-MCP55: not 100% native mode: will probe irqs later
> NFORCE-MCP55: BIOS didn't set cable bits correctly. Enabling workaround.
> NFORCE-MCP55: 0000:00:04.0 (rev a1) UDMA133 controller
> ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
> Probing IDE interface ide0...
> hda: PIONEER DVD-RW DVR-111L, ATAPI CD/DVD-ROM drive
> ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
> Probing IDE interface ide1...
> ide-floppy driver 0.99.newide
>
> $ cat /proc/ide/amd74xx
> ----------AMD BusMastering IDE Configuration----------------
> Driver Version: 2.13
> South Bridge: 0000:00:04.0
> Revision: IDE 0xa1
> Highest DMA rate: UDMA133
> BM-DMA base: 0xf000
> PCI clock: 33.3MHz
> -----------------------Primary IDE-------Secondary IDE------
> Prefetch Buffer: yes yes
> Post Write Buffer: yes yes
> Enabled: yes no
> Simplex only: no yes
> Cable Type: 80w 80w
> -------------------drive0----drive1----drive2----drive3-----
> Transfer Mode: PIO DMA DMA DMA
> Address Setup: 30ns 90ns 90ns 90ns
> Cmd Active: 90ns 90ns 300ns 300ns
> Cmd Recovery: 30ns 30ns 300ns 300ns
> Data Active: 90ns 330ns 330ns 330ns
> Data Recovery: 30ns 270ns 270ns 270ns
> Cycle Time: 120ns 600ns 600ns 600ns
> Transfer Rate: 16.6MB/s 3.3MB/s 3.3MB/s 3.3MB/s
>
> Best regards,
> Zolt?n B?sz?rm?nyi

Regards,
Michal

--
LOG
http://www.stardust.webpages.pl/log/

2007-08-16 10:59:24

by Zoltan Boszormenyi

[permalink] [raw]
Subject: Re: Bad CD disk disables IDE DMA

Michal Piotrowski ?rta:
> Hi Zoltan,
>
> On 15/08/07, Zoltan Boszormenyi <[email protected]> wrote:
>
>> Hi,
>>
>> I noticed that a bad CD of mine makes DMA disabled:
>>
>> hda: selected mode 0x44
>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>> ide: failed opcode was: unknown
>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>> ide: failed opcode was: unknown
>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>> ide: failed opcode was: unknown
>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>> ide: failed opcode was: unknown
>> hda: DMA disabled
>> hda: ide_intr: huh? expected NULL handler on exit
>> hda: ATAPI reset complete
>>
>> Every time I put the said CD into to drive and DMA is on, I get the
>> above messages.
>>
>
> This might be intended.
>

Might be. Note however, that there are no "cdrom_decode_status: " lines
when the drive is not using DMA. The disk is the same in both cases.
I don't know too much about ATAPI, but shouldn't it report the same
errors no matter how the commands are passed to the drive?
I tried to make it using DMA after mounting the "faulty" disk and
copying it.
The same errors occured in the logs when dd started reading but it actually
finished reading:

$ LANG=C dd if=/dev/hda of=image.iso bs=2048
dd: reading `/dev/hda': Input/output error
298106+0 records in
298106+0 records out
610521088 bytes (611 MB) copied, 144.349 seconds, 4.2 MB/s

The file is a bit larger than what isosize reports about it but IIRC
it's expected.
So, if the disk is actually faulty dd would drop dead and not able to
read the disk.
Or something is not quite right in the ide-cd driver. The "DMA disabled"
message
comes when the drive should spin up the disk. Isn't there a timeout
error somewhere?
Hm. Thinking about it a bit more upon mount the same is happening - before
the disk is spun up the error shows up in the logs and it switches to PIO.
Does it ring a bell to someone?

>> Two things are interesting: first, it gets mounted correctly and
>> readable and
>> second, when DMA was already disabled no such messages occur in the logs.
>> Anyhow, I would need DMA to correctly burn CDs/DVDs...
>> What can I do besides manually re-enable DMA?
>> All other disks I have tried behave perfectly.
>> This happened on 2.6.22[-rcX], 2.6.23-rc3-git1 and 2.6.20-1.2962.fc6.
>> This is on a Fedora Core 6 system. CD/DVD is using the old IDE drivers:
>>
>> Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
>> ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
>> NFORCE-MCP55: IDE controller at PCI slot 0000:00:04.0
>> NFORCE-MCP55: chipset revision 161
>> NFORCE-MCP55: not 100% native mode: will probe irqs later
>> NFORCE-MCP55: BIOS didn't set cable bits correctly. Enabling workaround.
>> NFORCE-MCP55: 0000:00:04.0 (rev a1) UDMA133 controller
>> ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
>> Probing IDE interface ide0...
>> hda: PIONEER DVD-RW DVR-111L, ATAPI CD/DVD-ROM drive
>> ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
>> Probing IDE interface ide1...
>> ide-floppy driver 0.99.newide
>>
>> $ cat /proc/ide/amd74xx
>> ----------AMD BusMastering IDE Configuration----------------
>> Driver Version: 2.13
>> South Bridge: 0000:00:04.0
>> Revision: IDE 0xa1
>> Highest DMA rate: UDMA133
>> BM-DMA base: 0xf000
>> PCI clock: 33.3MHz
>> -----------------------Primary IDE-------Secondary IDE------
>> Prefetch Buffer: yes yes
>> Post Write Buffer: yes yes
>> Enabled: yes no
>> Simplex only: no yes
>> Cable Type: 80w 80w
>> -------------------drive0----drive1----drive2----drive3-----
>> Transfer Mode: PIO DMA DMA DMA
>> Address Setup: 30ns 90ns 90ns 90ns
>> Cmd Active: 90ns 90ns 300ns 300ns
>> Cmd Recovery: 30ns 30ns 300ns 300ns
>> Data Active: 90ns 330ns 330ns 330ns
>> Data Recovery: 30ns 270ns 270ns 270ns
>> Cycle Time: 120ns 600ns 600ns 600ns
>> Transfer Rate: 16.6MB/s 3.3MB/s 3.3MB/s 3.3MB/s
>>
>> Best regards,
>> Zolt?n B?sz?rm?nyi
>>
>
> Regards,
> Michal
>
>

Best regards,
Zolt?n


2007-08-16 12:12:20

by Bodo Eggert

[permalink] [raw]
Subject: Re: Bad CD disk disables IDE DMA

Michal Piotrowski <[email protected]> wrote:
> On 15/08/07, Zoltan Boszormenyi <[email protected]> wrote:

>> I noticed that a bad CD of mine makes DMA disabled:

[...]
>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>> ide: failed opcode was: unknown
>> hda: DMA disabled
>> hda: ide_intr: huh? expected NULL handler on exit
>> hda: ATAPI reset complete
>>
>> Every time I put the said CD into to drive and DMA is on, I get the
>> above messages.
>
> This might be intended.

Maybe, and maybe only a certain effect might be intended. And maybe I can
help by asking these questions:

1) Does disabling DMA fix the seek errors, or does it hide them by the PIO
interfce not printing them?

2) If it does hide them, would filtering for seek errors be a sane thing to
do, or does the DMA engine (or HDD) behave badly on these errors, or
do bad-DMA devices report seek errors, too?

3) If it does not hide them, would re-enabling DMA on disk change be a
feasable workaround?
(proposed interface: use hdparm -d $num where $num =
0, 1: as before
3: DMA on, if switched off automatically, will be set to 2
2: DMA off, will be turned on (set to 3) on disk change)

4) Does libata work well enough for making all effort put into that old
IDE layer be a waste of time?
--
Fun things to slip into your budget
True: NASA couldn't get money approved for hangars for Space Shuttle so they
put in request for 'Space Vehicle Refurbishment and Storage Facilities'
- and got the money to build hangars

2007-08-16 12:15:29

by Zoltan Boszormenyi

[permalink] [raw]
Subject: Re: Bad CD disk disables IDE DMA

Zoltan Boszormenyi ?rta:
> Michal Piotrowski ?rta:
>> Hi Zoltan,
>>
>> On 15/08/07, Zoltan Boszormenyi <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> I noticed that a bad CD of mine makes DMA disabled:
>>>
>>> hda: selected mode 0x44
>>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>>> ide: failed opcode was: unknown
>>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>>> ide: failed opcode was: unknown
>>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>>> ide: failed opcode was: unknown
>>> hda: cdrom_decode_status: status=0x51 { DriveReady SeekComplete Error }
>>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>>> ide: failed opcode was: unknown
>>> hda: DMA disabled
>>> hda: ide_intr: huh? expected NULL handler on exit
>>> hda: ATAPI reset complete
>>>
>>> Every time I put the said CD into to drive and DMA is on, I get the
>>> above messages.
>>>
>>
>> This might be intended.
>>
>
> Might be. Note however, that there are no "cdrom_decode_status: " lines
> when the drive is not using DMA. The disk is the same in both cases.
> I don't know too much about ATAPI, but shouldn't it report the same
> errors no matter how the commands are passed to the drive?
> I tried to make it using DMA after mounting the "faulty" disk and
> copying it.
> The same errors occured in the logs when dd started reading but it
> actually
> finished reading:
>
> $ LANG=C dd if=/dev/hda of=image.iso bs=2048
> dd: reading `/dev/hda': Input/output error
> 298106+0 records in
> 298106+0 records out
> 610521088 bytes (611 MB) copied, 144.349 seconds, 4.2 MB/s
>
> The file is a bit larger than what isosize reports about it but IIRC
> it's expected.
> So, if the disk is actually faulty dd would drop dead and not able to
> read the disk.
> Or something is not quite right in the ide-cd driver. The "DMA
> disabled" message
> comes when the drive should spin up the disk. Isn't there a timeout
> error somewhere?
> Hm. Thinking about it a bit more upon mount the same is happening -
> before
> the disk is spun up the error shows up in the logs and it switches to
> PIO.
> Does it ring a bell to someone?

Another data point: the other disks I tried up to now were DVDs
and DMA remains turned on for those. It's even true for empty
DVDs and the label side of a Labelflash disk. On the other hand,
another CD and two other CDRW disks (no visible faults, scratches
on either btw) give me the same error when they are mounted,
DMA gets disabled.

... some more tests and researching ...

TADA! The solution was to tune down the drive to only use UDMA3
with "hdparm -X67". Now although dd didn't get any faster, DMA
remained enabled. Actually the drive is originally a Pioneer 111D
that was reflashed to 111L to get the Labelflash feature.
Can it be a firmware bug? BTW the drive has a 80w cable.

>>> Two things are interesting: first, it gets mounted correctly and
>>> readable and
>>> second, when DMA was already disabled no such messages occur in the
>>> logs.
>>> Anyhow, I would need DMA to correctly burn CDs/DVDs...
>>> What can I do besides manually re-enable DMA?
>>> All other disks I have tried behave perfectly.
>>> This happened on 2.6.22[-rcX], 2.6.23-rc3-git1 and 2.6.20-1.2962.fc6.
>>> This is on a Fedora Core 6 system. CD/DVD is using the old IDE drivers:
>>>
>>> Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
>>> ide: Assuming 33MHz system bus speed for PIO modes; override with
>>> idebus=xx
>>> NFORCE-MCP55: IDE controller at PCI slot 0000:00:04.0
>>> NFORCE-MCP55: chipset revision 161
>>> NFORCE-MCP55: not 100% native mode: will probe irqs later
>>> NFORCE-MCP55: BIOS didn't set cable bits correctly. Enabling
>>> workaround.
>>> NFORCE-MCP55: 0000:00:04.0 (rev a1) UDMA133 controller
>>> ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
>>> Probing IDE interface ide0...
>>> hda: PIONEER DVD-RW DVR-111L, ATAPI CD/DVD-ROM drive
>>> ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
>>> Probing IDE interface ide1...
>>> ide-floppy driver 0.99.newide
>>>
>>> $ cat /proc/ide/amd74xx
>>> ----------AMD BusMastering IDE Configuration----------------
>>> Driver Version: 2.13
>>> South Bridge: 0000:00:04.0
>>> Revision: IDE 0xa1
>>> Highest DMA rate: UDMA133
>>> BM-DMA base: 0xf000
>>> PCI clock: 33.3MHz
>>> -----------------------Primary IDE-------Secondary IDE------
>>> Prefetch Buffer: yes yes
>>> Post Write Buffer: yes yes
>>> Enabled: yes no
>>> Simplex only: no yes
>>> Cable Type: 80w 80w
>>> -------------------drive0----drive1----drive2----drive3-----
>>> Transfer Mode: PIO DMA DMA DMA
>>> Address Setup: 30ns 90ns 90ns 90ns
>>> Cmd Active: 90ns 90ns 300ns 300ns
>>> Cmd Recovery: 30ns 30ns 300ns 300ns
>>> Data Active: 90ns 330ns 330ns 330ns
>>> Data Recovery: 30ns 270ns 270ns 270ns
>>> Cycle Time: 120ns 600ns 600ns 600ns
>>> Transfer Rate: 16.6MB/s 3.3MB/s 3.3MB/s 3.3MB/s
>>>
>>> Best regards,
>>> Zolt?n B?sz?rm?nyi
>>>
>>
>> Regards,
>> Michal
>>
>>
>
> Best regards,
> Zolt?n
>
>
>


2007-08-16 12:39:57

by Zoltan Boszormenyi

[permalink] [raw]
Subject: Re: Bad CD disk disables IDE DMA

Bodo Eggert ?rta:
> Michal Piotrowski <[email protected]> wrote:
>
>> On 15/08/07, Zoltan Boszormenyi <[email protected]> wrote:
>>
>
>
>>> I noticed that a bad CD of mine makes DMA disabled:
>>>
>
> [...]
>
>>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>>> ide: failed opcode was: unknown
>>> hda: DMA disabled
>>> hda: ide_intr: huh? expected NULL handler on exit
>>> hda: ATAPI reset complete
>>>
>>> Every time I put the said CD into to drive and DMA is on, I get the
>>> above messages.
>>>
>> This might be intended.
>>
>
> Maybe, and maybe only a certain effect might be intended. And maybe I can
> help by asking these questions:
>
> 1) Does disabling DMA fix the seek errors, or does it hide them by the PIO
> interfce not printing them?
>

With DMA off no seek error occurs. When the transfer rate is
limited to UDMA3 I get this:

hda: drive_cmd: status=0x51 { DriveReady SeekComplete Error }
hda: drive_cmd: error=0x04 { AbortedCommand }
ide: failed opcode was: 0xec

Note the difference: the error code is different and
it knows the failed opcode as well. But DMA remains on.
Can it be a bad 80w cable? I don't think so, considering that
it doesn't occur for DVDs when using UDMA4...

> 2) If it does hide them, would filtering for seek errors be a sane thing to
> do, or does the DMA engine (or HDD) behave badly on these errors, or
> do bad-DMA devices report seek errors, too?
>
> 3) If it does not hide them, would re-enabling DMA on disk change be a
> feasable workaround?
> (proposed interface: use hdparm -d $num where $num =
> 0, 1: as before
> 3: DMA on, if switched off automatically, will be set to 2
> 2: DMA off, will be turned on (set to 3) on disk change)
>

The automatic DMA re-enabling would be a good solution.

> 4) Does libata work well enough for making all effort put into that old
> IDE layer be a waste of time?
>

Unfortunately libata (or pata_amd) doesn't work very well on this machine,
I tried to switch to libata for the CD drive but it lost the DVD-playing
capability.
It seems the error was that libdvdcss couldn't get the keys via the scd
device.
This is the main obstacle that stops me switching to Fedora 7 from FC6.
I reported it some time ago but got no answer. Look for subject
"DVD-playing, ide-cd vs scsi-cd drivers".

Best regards,
Zolt?n B?sz?rm?nyi


2007-08-19 08:34:14

by Zoltan Boszormenyi

[permalink] [raw]
Subject: Re: Bad CD disk disables IDE DMA

Zoltan Boszormenyi ?rta:
> Bodo Eggert ?rta:
>> Michal Piotrowski <[email protected]> wrote:
>>
>>> On 15/08/07, Zoltan Boszormenyi <[email protected]> wrote:
>>>
>>
>>
>>>> I noticed that a bad CD of mine makes DMA disabled:
>>>>
>>
>> [...]
>>
>>>> hda: cdrom_decode_status: error=0x40 { LastFailedSense=0x04 }
>>>> ide: failed opcode was: unknown
>>>> hda: DMA disabled
>>>> hda: ide_intr: huh? expected NULL handler on exit
>>>> hda: ATAPI reset complete
>>>>
>>>> Every time I put the said CD into to drive and DMA is on, I get the
>>>> above messages.
>>>>
>>> This might be intended.
>>>
>>
>> Maybe, and maybe only a certain effect might be intended. And maybe I
>> can
>> help by asking these questions:
>>
>> 1) Does disabling DMA fix the seek errors, or does it hide them by
>> the PIO
>> interfce not printing them?
>>
>
> With DMA off no seek error occurs. When the transfer rate is
> limited to UDMA3 I get this:
>
> hda: drive_cmd: status=0x51 { DriveReady SeekComplete Error }
> hda: drive_cmd: error=0x04 { AbortedCommand }
> ide: failed opcode was: 0xec
>
> Note the difference: the error code is different and
> it knows the failed opcode as well. But DMA remains on.
> Can it be a bad 80w cable? I don't think so, considering that
> it doesn't occur for DVDs when using UDMA4...
>
>> 2) If it does hide them, would filtering for seek errors be a sane
>> thing to
>> do, or does the DMA engine (or HDD) behave badly on these errors, or
>> do bad-DMA devices report seek errors, too?
>>
>> 3) If it does not hide them, would re-enabling DMA on disk change be a
>> feasable workaround?
>> (proposed interface: use hdparm -d $num where $num =
>> 0, 1: as before
>> 3: DMA on, if switched off automatically, will be set to 2
>> 2: DMA off, will be turned on (set to 3) on disk change)
>>
>
> The automatic DMA re-enabling would be a good solution.
>
>> 4) Does libata work well enough for making all effort put into that old
>> IDE layer be a waste of time?
>>
>
> Unfortunately libata (or pata_amd) doesn't work very well on this
> machine,
> I tried to switch to libata for the CD drive but it lost the
> DVD-playing capability.
> It seems the error was that libdvdcss couldn't get the keys via the
> scd device.
> This is the main obstacle that stops me switching to Fedora 7 from FC6.
> I reported it some time ago but got no answer. Look for subject
> "DVD-playing, ide-cd vs scsi-cd drivers".

Forget about this last comment. I just installed F7 on a similar machine,
motherboard is ABit KN9S instead of KN9SLI (mine), both have the same
MCP55 IDE rev a1 and MCP55 SATA rev a2. This new machine
plays DVDs nicely, so the difference is in the userspace. Although
both my FC6 and F7 has the same libdvdcss-1.2.9-4.lvn6. Its src.rpm
doesn't have any patches, just the mainstream libdvdcss sources.
Now explain that. :-)

> Best regards,
> Zolt?n B?sz?rm?nyi