AEC62XX Driver: Can ANYONE Help!?

Corbett Battaile ccb at ydl.net
Fri Nov 19 13:13:15 MST 2004


So, at the risk of beating a dead horse, I got around to trying those DMA
benchmarks, and here's the output from hdparm. Looks like disabling DMA
incurs a rather substantial penalty (about a factor of ten) on disk reads
(at least as measured by hdparm).


% hdparm /dev/hde

/dev/hde:
 multcount    =  0 (off)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  1 (on)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 30401/255/63, sectors = 488397168, start = 0
% hdparm -Tt /dev/hde

/dev/hde:
 Timing buffer-cache reads:   584 MB in  2.01 seconds = 290.16 MB/sec
 Timing buffered disk reads:   86 MB in  3.04 seconds =  28.27 MB/sec
% hdparm -d0 /dev/hde

/dev/hde:
 setting using_dma to 0 (off)
 using_dma    =  0 (off)
% hdparm -Tt /dev/hde

/dev/hde:
 Timing buffer-cache reads:   584 MB in  2.01 seconds = 290.45 MB/sec
 Timing buffered disk reads:    8 MB in  3.32 seconds =   2.41 MB/sec
% hdparm -gI /dev/hde

/dev/hde:
 geometry     = 30401/255/63, sectors = 488397168, start = 0

ATA device, with non-removable media
        Model Number:       DW CDW5200BS0-K1AB 0                    
        Serial Number:      DWW-AM7L2197452
        Firmware Revision:  800.D280
Standards:
        Supported: 14 13 12 11 
        Likely used: 14
Configuration:
        Logical         max     current
        cylinders       65343   0
        heads           4096    0
        sectors/track   16128   0
        --
        device size with M = 1024*1024:  2107703808 MBytes
        device size with M = 1000*1000:  2210087628 MBytes (2210087 GB)
Capabilities:
        IORDY(may be)(cannot be disabled)
        Queue depth: 1
        Standby timer values: spec'd by Vendor
        R/W multiple sector transfer: Max = 128 Current = ?
        Advanced power management level: unknown setting (0x0000)
        Recommended acoustic management value: 254, current value: 128
        DMA: not supported
        PIO: unknown
Security: 
                supported
        not     enabled
        not     locked
        not     frozen
        not     expired: security count
        not     supported: enhanced erase
HW reset results:
        CBLID- below Vih
        Device num = 1 determined by the jumper
Checksum: correct
%


On Fri, 19 Nov 2004, Corbett Battaile wrote:
>
> Good to know - thanks for the info! If I get a chance, I might try some 
> benchmarks with and without DMA enabled.
> 
> I may also try a Sonnet Tempo 133 card. Based on the board layout, it 
> appears to be a Promise chip, and presumably the BIOS is more Mac friendly 
> so hopefully I'll be able to leave DMA enabled without getting any errors.
> 
> Does anyone have experience with the Sonnet ATA133 card(s) on recent 
> kernels? My main concern stems from my experience with Sonnet's Presto 
> Gigabit NIC, which is based on a Realtek R8169 chip. Before I bought my 
> Presto GigE, I emailed Sonnet tech support to ask if the Presto is 
> compatible with YDL. They didn't know. Turns out, I couldn't get the Presto 
> to work with YDL, although it works fine with Redhat. Apple's BCM5703 and 
> Intel's Pro1000 cards work great with YDL, though. (The former requires 
> building and installing the bcm5700 modules for best performance.)
> 
> Thanks again,
> - Corbett
> 
> 
> --On 11/19/04 9:24 AM +0100 Alexander Holst wrote:
> >
> > On Thu, 2004-11-18 at 22:40, Alexander Holst wrote:
> >
> >> Date: Thu, 18 Nov 2004 13:04:34 -0800
> >> From: four of six defective <4_of_6_defective at comcast.net>
> >> Subject: Re: AEC62XX Driver: Can ANYONE Help!?
> >>
> >> If it is a Rev A g3 you may have a problem.
> >> I have one and have not been able to change any
> >> hardware other than the cd drive.  It has been nothing
> >> but trouble.  In fact I am about to put it out to pasture.
> >
> > See below ;) - I assume some defective hardware ...
> >
> >> Date: Thu, 18 Nov 2004 14:48:27 -0700 (MST)
> >> From: Corbett Battaile <ccb at ydl.net>
> >> Subject: Re: AEC62XX Driver: Can ANYONE Help!?
> >>
> >> Turns out PART of my problems were indeed my fault.
> >> The AEC6280M is still broke, but I managed to get the PDC20269 to work
> >> once I realized that I had jumpered the drives for "Master, with
> >> slave" rather than "Master, single drive." Doh! While I can access the
> >> drives using the Promise card, I do get occasional errors like:
> >>         dma_intr: error=0x84 { DriveStatusError BadCRC }
> >> Anyone know if this warrants concern, especially given that the
> >> machines are intended to be file servers?
> >
> > Hi everybody,
> >
> > I do have a beige G3/233 DT Rev. A and have a Promise Ultra100 Tx2 PCI
> > card in it. As a matter of fact, it _is_ working very well with the
> > stock kernels that came with YDL 3.0 and 3.0.1. My Linux drive is
> > attached to the Promise controller, and I am currently writing this
> > email on it ;)
> >
> > I also have two PM7500/100 at work with the same Promise controllers
> > running YDL 3.0.1 as well. Also no problems there. The only caveat is
> > that neither Mac OS9 nor Mac OSX see the drives attached to the
> > controller, so one cannot boot directly off a drive attaced to the
> > controller. Maybe it presents itself to OpenFirmware though, then one
> > should be able to type the full OF path to a kernel manually and boot. I
> > have never investigated into that though.
> >
> > As for the "dma_intr: error=0x84 { DriveStatusError BadCRC }" errors, I
> > also ran into them. A search on a mailinglist reagarding Promise
> > controllers suggested to turn off DMA (as discussed earlier in this
> > thread) with "hdparam -d0 /dev/hdx". The errors stop after that.
> >
> > I added the following line to my rc.sysinit as the first line:
> > /sbin/hdparm -d0 /dev/hda
> >
> > All three described systems have all Linux partitions on drives attached
> > to the Promise controllers and are running extremely stable - one of the
> > 7500s is our firewall / DNS and has uptimes way over 150 days regularly.
> > I do have the feeling though that disabling DMA reduces performance on
> > the drives. Although it is a Ultra100 card in combination with
> > WesternDigital IDE100 drives, it seems that the drive attached to the
> > onboard IDE33 controller of my beige G3 seems to be faster :( According
> > to the boot log, it uses MultiWord DMA - therefore I wouldn't specify to
> > not use DMA by passing "ide=nodma" to the kernel it might prevent all
> > drives from using DMA.
> >
> > from dmesg:
> >
> > Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
> > ide: Assuming 33MHz system bus speed for PIO modes; override with
> > idebus=xx
> > PDC20268: IDE controller at PCI slot 00:0e.0
> > PDC20268: chipset revision 2
> > PDC20268: not 100% native mode: will probe irqs later
> > PDC20268: ROM enabled at 0x81804000
> >     ide0: BM-DMA at 0x0800-0x0807, BIOS settings: hda:pio, hdb:pio
> >     ide1: BM-DMA at 0x0808-0x080f, BIOS settings: hdc:pio, hdd:pio
> > ide2: Found Apple Heathrow ATA controller, bus ID 0
> > ide3: Found Apple Heathrow ATA controller, bus ID 1
> > Probing IDE interface ide0...
> > hda: WDC WD800JB-00CRA1, ATA DISK drive
> > Unhandled interrupt 18, disabled
> > blk: queue c034e020, I/O limit 4095Mb (mask 0xffffffff)
> > Probing IDE interface ide1...
> > Probing IDE interface ide2...
> > hde: WDC AC24300L, ATA DISK drive
> > Unhandled interrupt d, disabled
> > hde: Enabling MultiWord DMA 2
> > Probing IDE interface ide3...
> > hdg: TEAC CD-W552D, ATAPI CD/DVD-ROM drive
> > Unhandled interrupt e, disabled
> > hdg: Enabling MultiWord DMA 2
> > ide0 at 0x840-0x847,0x832 on irq 24
> > ide2 at 0xd7905000-0xd7905007,0xd7905160 on irq 13
> > ide3 at 0xd7909000-0xd7909007,0xd7909160 on irq 14
> > hda: attached ide-disk driver.
> > hda: host protected area => 1
> > hda: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=155061/16/63,
> > UDMA(100)
> > hde: attached ide-disk driver.
> > hde: task_no_data_intr: status=0x51 { DriveReady SeekComplete Error }
> > hde: task_no_data_intr: error=0x04 { DriveStatusError }
> > hde: host protected area => 1
> > hde: 8421840 sectors (4312 MB) w/256KiB Cache, CHS=8912/15/63, (U)DMA
> > ide-cd: passing drive hdg to ide-scsi emulation.
> > hdg: attached ide-scsi driver.
> > Partition check:
> >  hda:hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
> > hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
> > hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
> > hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
> > hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
> > hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
> > hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
> > hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
> > PDC202XX: Primary channel reset.
> > ide0: reset: success
> >
> > As you can see, hda through hdd are handled by the PCI controller, hde
> > through hdh are handled by the Apple onboard chips. The "hda: dma_intr:
> > ..." errors stop after rc.sysinit picks up. I wish I knew, how to set
> > the BIOS settings of the card without the use of an Intel based PC (I
> > have none). Maybe that would help in tuning the whole setup.
> >
> > As for the nonoptimal transfer rates due to nonoptimal settings of the
> > BIOS of the card, I don't know how this would perform as a server. Other
> > than that, I am quite happy with all three systems.
> >
> > Hope this helps the original poster of this thread and maybe rings a
> > bell for others to be able to tell me, how I can further optimze
> > performance on my systems, e.g. also get MultiWord DMA enabled on the
> > drives attached to the PCI controller ...
> >
> > Greetings,
> > Alex


-- 
Corbett Battaile <ccb at ydl.net>



More information about the yellowdog-general mailing list