Built-in IDE controller: secondary controller very slow

Built-in IDE controller: secondary controller very slow

Post by James Knowle » Tue, 04 Jul 2000 04:00:00



I have:
Athlon 650 on a ASUS K7M motherboard.
8GB HD on primary controller (hda)
8GB HD on secondary controller [master] (hdc)
CD-ROM on secondary controller [slave] (hdd)

I have DMA enabled via hdparm -d1 on both hda and hdc. Without this I
lose over half of my speed. However, hdc is very slow compared to hda.
Running hdparm -Tt /dev/hda /dev/hdc gives me

/dev/hda:
 Timing buffer-cache reads:   128 MB in  2.41 seconds = 53.11 MB/sec
 Timing buffered disk reads:  64 MB in  5.83 seconds = 10.98 MB/sec

/dev/hdc:
 Timing buffer-cache reads:   128 MB in  2.41 seconds = 53.11 MB/sec
 Timing buffered disk reads:  64 MB in 31.67 seconds =  2.02 MB/sec

Is there some fundamental reason why hdc is less than 20% of the speed
of hda? Am I incorrect in assuming that both controllers should have the
same throughput?

--
In times of crisis, it is of utmost importance to keep one's head.
- M. Antoinette

 
 
 

Built-in IDE controller: secondary controller very slow

Post by Kenneth R?rv » Wed, 05 Jul 2000 04:00:00



Putting a CDROM on the same interface as a hard drive will slow down
things, but what you're reporting here seems a bit slow even for that
problem - at least compared to a setup I used to have. check to see if
there are any differences on the setups of the two harddrives with hdparm -
i

Quote:>I have:
>Athlon 650 on a ASUS K7M motherboard.
>8GB HD on primary controller (hda)
>8GB HD on secondary controller [master] (hdc)
>CD-ROM on secondary controller [slave] (hdd)

>I have DMA enabled via hdparm -d1 on both hda and hdc. Without this I
>lose over half of my speed. However, hdc is very slow compared to hda.
>Running hdparm -Tt /dev/hda /dev/hdc gives me
<snip>
>Is there some fundamental reason why hdc is less than 20% of the speed
>of hda? Am I incorrect in assuming that both controllers should have the
>same throughput?

--
Kenneth R?rvik         91841353/22718452

0554 OSLO               home.no.net/stasis

 
 
 

Built-in IDE controller: secondary controller very slow

Post by James Knowle » Wed, 05 Jul 2000 04:00:00


Quote:> Putting a CDROM on the same interface as a hard drive will slow down
> things, but what you're reporting here seems a bit slow even for that
> problem - at least compared to a setup I used to have.

Something is fishy with the newer HD I believe. I've re-arranged
hardware moving hdc->hdb (slave on the primary controller) and
reinstalled Linux from scratch.

I get the same type of throughput (hda=11MB/s;hdb=2MB/s), so I assume
that it's the hard drive. I checked the BIOS settings thoroughly and
everything that I could think of from the bottom up.

hdb does not accept DMA. If I "hdparm -d1 /dev/hdb" I get some error
messages from the kernel about the drive timing out and it resets the
drive. I can no longer change the DMA setting on hda using hdparm. I had
to add "ide0=dma" to lilo.conf to enable DMA on hda.

hdparm -i does not show anything suspicious. The only real differences
are minor and expected. (i.e. the newer wierd drive shows newer pio
modes, etc.)

--
Cats are * cars -- especially when you chase them over curbs.

 
 
 

1. aha1542b scsi controller as secondary controller

I'm having problems getting an adaptec aha1542b ISA SCSI controller to
work as a secondary controller.

I have:

A DELL Omnitech 590
Intel Pentium 90
64 MB RAM
PCI Motherboard w/ onboard NEC NCR53c8xx SCSI controller (I don't know
precisely which version because some of the docs are missing).
Internal 1GB SCSI HD.
SCSI Tape Drive and CD-ROM.
2 x Storage tower: 4 x 512MB SCSI drives each
Slackware linux 2.3 (non-ELF) w/ kernel 1.2.8

As you can see, I have a total of 11 SCSI devices and need a second bus.
I installed the aha1542b controller and attached one of the storage
towers to it.

The board is set to the default IRQ (11), and I changed the IO address
from 0x330 to 0x334 so that the system would boot (Otherwise, the built
in controller will automatically configure itself as a secondary
controller and the adaptec will try to boot).
The floppy drive controller on the adaptec card is disabled.

I have compiled the kernel with both the NCR53c7,8xx and adaptec aha1542b
drivers. On bootup, the driver displays the following message twice:

"Invalid address for shpnt with 1542."

then detects the onboard controller and boots properly (but without
making the secondary controller).

The message comes from the following location in the aha1542_detect
function in aha1542.c (line 934):

                    /* For now we do this - until kmalloc is more intelligent
                       we are resigned to stupid hacks like this */
                    if ((unsigned int) shpnt > 0xffffff) {
                      printk("Invalid address for shpnt with 1542.\n");
                      goto unregister;
                    }

                    if(!aha1542_test_port(bases[indx], shpnt)) goto
unregister;

I have tried removing other drivers in the kernel and moving the IO
address of the card to 0x234 (with a LILO parameter to tell the driver
where to find it). I have also tried the 1.2.13 kernel, however, the
aha1542.c files appear identical in both versions and the same problem
results.

Apparently, the SCSI host structure is being allocated outside of an
acceptable range. What causes this, and what can I do (hack, kludge, or
otherwise) to get the driver to allocate this structure properly?
What is the problem described here with kmalloc and how can it be avoided
(besides not using the driver...)?

Any help would be appreciated.

2. Inter Process Communication

3. Secondary IDE controller (PROBLEM SOLVED)

4. How to replace character by LF in a file ?

5. Installing on secondary IDE controller

6. Q: Headers in TIN

7. IDE drive on controller secondary port

8. Here's a Thinker for ya... IP Chains, DHCPD, Routed question!!

9. LINUX and secondary IDE controller addresses HELP!

10. Lilo: booting to secondary IDE controller

11. accessing drive on secondary IDE controller

12. Fix for promise RAID controllers not working as IDE controllers in 2.4.19

13. IDE controller cards with >= 4 *independent* controllers?