The stock 2.2.12 kernel does not support disks >32GB. This
bit me while trying to install on those spiffy new IBM
DeskStar 37GP hard drives. This problem is because Linux
stores the number of cylinders in a short (to save those
precious 2 extra bytes, sigh) and so overflows when the
number of cylinders is greater than 64k.
There is a patch for this, from Andre Hedrick. It's rather
large, though, as in addition to fixing this it adds
extensive additional support for a number of UDMA chipsets.
It can be found at:
(Oh, did I mention that my BIOS didn't support the drive
either? But, that's not your problem. I just *love* PC
Assigned to dledford
*** Bug 8590 has been marked as a duplicate of this bug. ***
I've got that same IBM 37.5 GB disk, and was unable to use the whole disk with
2.2.12-20. Kernel 2.2.14 solved the problem, and it's up and running nicely.
If your BIOS doesn't recognize your big harddisk (mine hangs while
detecting/configuring, Award 4.51PG), then you might want to do as I did. I
went into the "Integrated ..."-menu in my Award BIOS, and chose "Primary slave
PIO Mode" as Mode4 instead of the default "Auto". As a result, my harddisk went
from 2 MB/s to 8 MB/s, and it doesn't lag the machine any more. I first tried
some twinkling with hdparm -XA/-d/-u/ and so on.. But the BIOS-change was the
thing that "turned it on", so to speak.
The RedHat kernels don't activate dma by default, the stock config of 2.2.14
does. Hdparm -d /dev/hdx is a good thing to try.
Anyhow, I was just wondering what the difference between (U)DMA vs UDMA
actually is? It seems to be that (U)DMA means enabled but not supported by
BIOS, while UDMA means enabled and supported by BIOS. Are there any performance
issues here? My 37.5 GB disk runs with 8.6 MB/s with hdparm -t, and my old 6 GB
disk runs with > 9 MB/s.
Since it works in 6.2 - closed