Subject: Re: disk performance on my new Athlon64 3500+: half fixed
To: None <port-amd64@NetBSD.ORG>
From: Anne Bennett <anne@porcupine.montreal.qc.ca>
List: port-amd64
Date: 01/02/2006 16:35:47
"Jonathan A. Kollasch" <jakllsch@kollasch.net> answers my question:

>> Summary of question: is support planned for the "ATI Technologies
>>                      product 0x4379" serial ATA disk controller?

> It looks like -current has that device assigned to ixpide(4).
> See src/sys/dev/pci/pcidevs and src/sys/dev/pci/ixpide.c.  

It turns out that I needed to replace src/sys/dev/pci/pcidevs.h
and src/sys/dev/pci/pcidevs_data.h, too, but... IT WORKS!  The kernel
now reports:

   ixpide1 at pci0 dev 18 function 0
   ixpide1: ATI Technologies IXP IDE Controller (rev. 0x00)
   ixpide1: bus-master DMA support present
   ixpide1: primary channel configured to native-PCI mode
   pci_intr_map: bus 0 dev 18 func 0 pin 1; line 11
   pci_intr_map: no MP mapping found
   ixpide1: using irq 11 for native-PCI interrupt
   atabus2 at ixpide1 channel 0
   ixpide1: secondary channel configured to native-PCI mode
   wd0 at atabus2 drive 0: <ST3250823AS>
   wd0(ixpide1:0:0): using PIO mode 4, Ultra-DMA mode 5 (Ultra/100) (using DMA)

... and a test reveals that using wd0 no longer causes interrupts to
skyrocket; also, transfer rates are now around 16MB/s for simultaneous
read/write on the same disk, and up to 47MB/s writing if I read
the data from another disk.  There are some approx-10-second pauses
("ixpide1:0:0: lost interrupt", "type: ata tc_bcount: 65536 tc_skip: 0"),
but at least it's now mostly normal and fast.  I can live with the odd
pauses, and assume that a future release will iron out these little
wrinkles.  Now I can initialize my software RAID set in a few hours
instead of a few days.

Thank you, thank you, thank you.

> Lucky you, at least your SATA works.

In case it makes you feel any better, I still need to iron out quite a
few "not configured" devices.  But now that you've pointed me in the
right direction, I will grep through the sys/dev/pci/* files to see if
any of them have appeared recently.

Thanks again!


[Note to self: see after signature for list of devices.]


Anne.
-- 
Ms. Anne Bennett, as a private citizen:  anne@porcupine.montreal.qc.ca
Also reachable more officially at work:  anne@encs.concordia.ca
--------------------------------------------------------------------------

  ppb0 at pci0 dev 1 function 0: ATI Technologies product 0x5a3f (rev. 0x00)
  vga0 at pci1 dev 5 function 0: ATI Technologies product 0x5954 (rev. 0x00)

  ATI Technologies SB400 USB2 Host Controller (USB serial bus, interface 0x20)
    at pci0 dev 19 function 2 not configured

  ATI Technologies SB400 SMB Controller (SMBus serial bus, revision 0x10)
    at pci0 dev 20 function 0 not configured

  Lucent Technologies product 0x048c (miscellaneous communications, 
    revision 0x03) at pci2 dev 1 function 0 not configured
    [modem card?]

  VIA Technologies VT6306 IEEE 1394 Host Controller (Firewire serial bus,
    interface 0x10, revision 0x80) at pci2 dev 4 function 0 not configured

  ATI Technologies IXP AC'97 Audio Controller (audio multimedia, revision 0x01)
    at pci0 dev 20 function 5 not configured

--------------------------------------------------------------------------