2005-03-15 00:33:41

by linux-os (Dick Johnson)

[permalink] [raw]
Subject: Awful long timeouts for flash-file-system


Hello IDE experts.

I am trying to use a SanDisk SDCFB-256, CFA DISK drive. This
is supposed to emulate an IDE drive and does (sort of). However,
upon boot, the boot-code keeps trying and trying and trying to
do SOMETHING that aparently isn't even necessary because the
virtual disk is accessible and can be written/read and I can
even boot from it.

But when it is on a system that is booting from a real drive,
I get the following errors, each one taking 15 seconds to time-
out. This runs the boot-time of a workstation that's supposed
to write stuff to these disks up to unacceptible limits
(5 minutes). It's like booting an old VAX.

Is there a fix for whatever the startup-code is trying to do?

Also, note that even though I told the BIOS to use PIO and
even though it was reported correctly, somebody decided
that I didn't really know what I wanted and set the damn
interface to UDMA 100 anyway. These are DMA timeout-errors!


RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: IDE controller at PCI slot 0000:00:07.1
VP_IDE: chipset revision 6
VP_IDE: not 100% native mode: will probe irqs later
VP_IDE: VIA vt82c686b (rev 40) IDE UDMA100 controller on pci0000:00:07.1
ide0: BM-DMA at 0xf800-0xf807, BIOS settings: hda:pio, hdb:pio
Probing IDE interface ide0...
hda: Maxtor 6E040L0, ATA DISK drive
hdb: SanDisk SDCFB-256, CFA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
Probing IDE interface ide2...
Probing IDE interface ide3...
Probing IDE interface ide4...
Probing IDE interface ide5...
hda: max request size: 128KiB
hda: 80293248 sectors (41110 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100)
hda: cache flushes supported
hda: hda1 hda2 hda3 hda4 < hda5 >
hdb: max request size: 128KiB
hdb: 501760 sectors (256 MB) w/1KiB Cache, CHS=980/16/32, DMA
hdb: cache flushes not supported
hdb:<4>hdb: dma_timer_expiry: dma status == 0x61
hdb: DMA timeout error
hdb: dma timeout error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: unknown
hdb1

[SNIPPED...]

hdb:<4>hdb: dma_timer_expiry: dma status == 0x61
hdb: DMA timeout error
hdb: dma timeout error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: unknown
hdb1
hdb: dma_timer_expiry: dma status == 0x61
hdb: DMA timeout error
hdb: dma timeout error: status=0x58 { DriveReady SeekComplete DataRequest }

ide: failed opcode was: unknown
hdb:<4>hdb: dma_timer_expiry: dma status == 0x61
hdb: DMA timeout error
hdb: dma timeout error: status=0x58 { DriveReady SeekComplete DataRequest }
ide: failed opcode was: unknown


Everyone of these is 15 seconds!

hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1
hdb: hdb1

That last group takes 3 minutes!


Cheers,
Dick Johnson
Penguin : Linux version 2.6.11 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.


2005-03-15 05:22:00

by Robert Hancock

[permalink] [raw]
Subject: Re: Awful long timeouts for flash-file-system

linux-os wrote:
>
> Hello IDE experts.
>
> I am trying to use a SanDisk SDCFB-256, CFA DISK drive. This
> is supposed to emulate an IDE drive and does (sort of). However,
> upon boot, the boot-code keeps trying and trying and trying to
> do SOMETHING that aparently isn't even necessary because the
> virtual disk is accessible and can be written/read and I can
> even boot from it.

> hdb: max request size: 128KiB
> hdb: 501760 sectors (256 MB) w/1KiB Cache, CHS=980/16/32, DMA
> hdb: cache flushes not supported
> hdb:<4>hdb: dma_timer_expiry: dma status == 0x61

I'm assuming you're using a CF-to-IDE adapter to hook up the card. Most
likely your CompactFlash card is indicating that it supports DMA and the
kernel is trying to use it. However, many CF-to-IDE adapters don't hook
up the DMA control lines properly so the requests all time out until the
kernel gives up using DMA.

We use some Mesa Electronics CF-IDE adapters at work - some of the newer
ones have some jumpers with positions NOR and DMA, DMA works if the
jumpers are set to the DMA position. I don't think we've tried using any
DMA-supporting CF cards on the older ones without these jumpers.

If the adapter you're using doesn't do DMA, I believe that if you use
options like hdb=nodma or ide1=nodma, etc. that will get the kernel to
not try and use it.

--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from [email protected]
Home Page: http://www.roberthancock.com/

2005-03-17 04:06:36

by Voluspa

[permalink] [raw]
Subject: Re: Awful long timeouts for flash-file-system


At 2005-03-15 0:28:59 linux-os wrote:

> But when it is on a system that is booting from a real drive, I get
> the following errors, each one taking 15 seconds to time-out.

I'm getting these freezes (timeouts) sporadicly on a normal IDE system
during normal runtime. Ext2 file system, no pattern except that it
never happens on the hdb disk. On hdc there is a cdrw and hdd a dvd:

loke:loke:~$ uname -r
2.6.11
loke:loke:~$ grep dma_timer_expiry /var/log/kernel
Mar 3 18:03:01 loke kernel: hda: dma_timer_expiry: dma status == 0x61
Mar 4 19:54:47 loke kernel: hda: dma_timer_expiry: dma status == 0x61
Mar 13 18:52:13 loke kernel: hda: dma_timer_expiry: dma status == 0x61
Mar 15 13:35:10 loke kernel: hda: dma_timer_expiry: dma status == 0x61
Mar 15 19:38:47 loke kernel: hda: dma_timer_expiry: dma status == 0x61
loke:loke:~$

It began with kernel 2.6.11 and I reported it immediately:

http://marc.theaimsgroup.com/?l=linux-kernel&m=110987450912711&w=2

Prior to that I was running 2.6.11-rc4 from Feb 13 to Feb 24 and -rc5
from Feb 24 to Mar 3 without these freezes. But perhaps that was too
short periods to catch anything.

Adding Bartlomiej Zolnierkiewicz to the CC list since it should be in
his corner.

Mvh
Mats Johannesson
--

2005-03-17 22:15:40

by Voluspa

[permalink] [raw]
Subject: Re: Awful long timeouts for flash-file-system

On Thu, 17 Mar 2005 05:06:23 +0100 Voluspa wrote:

<some junk>

Went back to 2.6.10 and just got one of those dma_timer_expiry freezes.
Seems the disk is on the blink then. Sorry about the noise.

Mvh
Mats Johannesson
--