Subject: problems with (specific) IDE support in 1.6ZE
To: None <current-users@netbsd.org>
From: Malcolm Herbert <mjch@mjch.net>
List: current-users
Date: 12/04/2003 15:47:20
--2xzXx3ruJf7hsAzo
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

We recently bought three new PCs to act as servers, and unfortunately
our supplier had a limited number of choices as to the internal
configuration of the machine ...

I discovered that I had to run -current in order to get support for the
SCSI hosts cards (LSI Logic 53c1030 U320) which is working fine, however
I've been rather disappointed with the IDE performance on this machine
since we got them, until I found out why I'm having a problem ...

The IDE controller identifies itself to the BIOS as a MegaRAID device,
which doesn't appear to be supported by -current, so I've had to disable
its RAID capability, configure it for legacy IDE and run with RAIDFrame
over the two internal drives. I don't have a problem with this, since
I'm aiming for reliability and not speed, so software RAID as opposed to
hardware doesn't bother me.

The disks themselves are 40G IDE drives (Maxtor 6E040L0 Ultra/133), so
one would think they'd be reasonably snappy. When I went to build a 36G
mirrored device however, it took 8 _hours_ to build (similar config on
my machine at home took 45min to build a 40G mirror)

iostat tells me that the best performance I get out of them is about
1.6M/s which is woeful.

dmesg tells me that the ide controller is a ServerWorks CSB6 RAID/IDE
controller, which mostly matches what the BIOS says, however it also
notes that although there is bus-master DMA support present, it is
unused as there is no driver support (full boot dmesg output follows
this message)

Is there anything I can do to get support for this device and get at
least DMA support working? I don't care particularly about using it for
hardware RAID, but the current speed is dog slow (slower than the SCSI2
disk I have hanging out the back of the machine ... ) and will really
hurt when I begin putting the machine into production (since swap is on
these two drives as well)

Could there be some debugging stuff in this kernel that I need to turn
off?

I'm fairly new to -current and haven't had much success building a
kernel myself yet (this install was done from a nughtly build from
November, from memory), but any tips would be greatly appreciated ...

--=20
Malcolm Herbert                                This brain intentionally
mjch@mjch.net                                                left blank

-- dmesg output follows --
NetBSD 1.6ZE (GENERIC) #0: Mon Nov  3 08:38:03 UTC 2003
	autobuild@tgm.netbsd.org:/autobuild/HEAD/i386/OBJ/autobuild/HEAD/src/sys/a=
rch/i386/compile/GENERIC
total memory =3D 511 MB
avail memory =3D 466 MB
using 6144 buffers containing 26292 KB of memory
BIOS32 rev. 0 found at 0xfda90
mainbus0 (root)
cpu0 at mainbus0: (uniprocessor)
cpu0: Intel Pentium 4 (686-class), 2399.46 MHz, id 0xf29
cpu0: features bfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features bfebfbff<PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX>
cpu0: features bfebfbff<FXSR,SSE,SSE2,SS,HTT,TM,SBF>
cpu0: I-cache 12K uOp cache 8-way, D-cache 8 KB 64b/line 4-way
cpu0: L2 cache 512 KB 64b/line 8-way
cpu0: ITLB 4K/4M: 128 entries
cpu0: DTLB 4K/4M: 64 entries
cpu0: 16 page colors
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0
pchb0: ServerWorks CMIC_SL Host (rev. 0x32)
pchb1 at pci0 dev 0 function 1
pchb1: ServerWorks CMIC_SL Host (rev. 0x00)
pci1 at pchb1 bus 255
pci1: no spaces enabled!
wm0 at pci0 dev 2 function 0: Intel i82540EM 1000BASE-T Ethernet, rev. 2
wm0: interrupting at irq 5
wm0: 32-bit 33MHz PCI bus
wm0: 64 word (6 address bits) MicroWire EEPROM
wm0: Ethernet address 00:c0:9f:26:17:98
makphy0 at wm0 phy 1: Marvell 88E1011 Gigabit PHY, rev. 3
makphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000bas=
eT-FDX, auto
fxp0 at pci0 dev 4 function 0: i82550 Ethernet, rev 13
fxp0: interrupting at irq 5
fxp0: Ethernet address 00:02:b3:d1:56:03
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
mpt0 at pci0 dev 6 function 0: LSI Logic 53c1030 Ultra320 SCSI
mpt0: interrupting at irq 3
scsibus0 at mpt0: 16 targets, 8 luns per target
mpt1 at pci0 dev 7 function 0: LSI Logic 53c1030 Ultra320 SCSI
mpt1: interrupting at irq 5
scsibus1 at mpt1: 16 targets, 8 luns per target
vga1 at pci0 dev 8 function 0: ATI Technologies Rage XL (rev. 0x27)
wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0
pciide0 at pci0 dev 14 function 0
pciide0: ServerWorks CSB6 IDE (rev. 0xa0)
pciide0: bus-master DMA support present, but unused (no driver support)
pciide0: primary channel configured to native-PCI mode
pciide0: using irq 11 for native-PCI interrupt
atabus0 at pciide0 channel 0
pciide0: secondary channel wired to native-PCI mode
atabus1 at pciide0 channel 1
pcib0 at pci0 dev 15 function 0
pcib0: ServerWorks CSB6 SouthBridge (rev. 0xa0)
pciide1 at pci0 dev 15 function 1
pciide1: ServerWorks CSB6 RAID/IDE (rev. 0xa0)
pciide1: bus-master DMA support present, but unused (no driver support)
pciide1: primary channel configured to compatibility mode
pciide1: primary channel interrupting at irq 14
atabus2 at pciide1 channel 0
pciide1: secondary channel configured to compatibility mode
pciide1: secondary channel interrupting at irq 15
atabus3 at pciide1 channel 1
ohci0 at pci0 dev 15 function 2: ServerWorks CSB6 USB Host Controller (rev.=
 0x05)
ohci0: interrupting at irq 10
ohci0: OHCI version 1.0, legacy support
usb0 at ohci0: USB revision 1.0
uhub0 at usb0
uhub0: ServerWorks OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 4 ports with 4 removable, self powered
pchb2 at pci0 dev 15 function 3
pchb2: ServerWorks CSB6 ISA bridge (rev. 0x00)
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
lpt0 at isa0 port 0x378-0x37b irq 7
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
isapnp0: no ISA Plug 'n Play devices found
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
Kernelized RAIDframe activated
scsibus0: waiting 2 seconds for devices to settle...
scsibus1: waiting 2 seconds for devices to settle...
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <AOPEN   CD-RW CRW5224     1.07 20030404, , 1.07>=
 cdrom removable
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wd0 at atabus2 drive 0: <Maxtor 6E040L0>
wd0: drive supports 16-sector PIO transfers, LBA addressing
wd0: 39205 MB, 79656 cyl, 16 head, 63 sec, 512 bytes/sect x 80293248 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd1 at atabus3 drive 0: <Maxtor 6E040L0>
wd1: drive supports 16-sector PIO transfers, LBA addressing
wd1: 39205 MB, 79656 cyl, 16 head, 63 sec, 512 bytes/sect x 80293248 sectors
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
raid0: RAID Level 1
raid0: Components: /dev/wd0b /dev/wd1b
raid0: Total Sectors: 69806848 (34085 MB)
boot device: raid0
root on raid0a dumps on raid0b
root file system type: ffs
raid0: Device already configured!
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)

--2xzXx3ruJf7hsAzo
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (NetBSD)

iD8DBQE/zrxW/3AcQ0fM4P8RAsjxAKCs6cBNHODFBDABlzKWnG8JusvzUQCdFMyv
neuoxJ5Pv+G+YvCc97aFQBk=
=MEg9
-----END PGP SIGNATURE-----

--2xzXx3ruJf7hsAzo--