>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by Richard G » Wed, 17 Jul 2002 21:46:03



Distribution: Slackware 8.1
System:  Athlon XP 1900 w/512 meg RAM and two Maxtor 160 Gig IDE hard drives

Just what is the scoop on hard drives greater that 160 Gig in size?  Is they
is or is they ain't supported.  I have found the Hedrick kernel patch (
http://www.kernel.org/pub/linux/kernel/people/hedrick/ide-2.4.18/ ) and see
stuff about 48 bit addressing in the patch but unfortunately am not exactly
sure on how to actually patch the source.

So is it the hedrick patch I want?  Can I install to the part of the drive I
see...then install the patch and 'activate' the rest of the drive or will
that cause partition problems?  Does anyone know where instructions to the
hedrick kernel patches can be found? (or are there generic kernel patch
instructions?)

[stuff in the hedrick patch]
- * recal_intr() is invoked on completion of a WIN_RESTORE (recalibrate)
cmd.
+ * 268435455  == 137439 MB or 28bit limit
+ * 320173056  == 163929 MB or 48bit addressing
+ * 1073741822 == 549756 MB or 48bit addressing fake drive
[/stuff in the hedrick patch]

[my errors thus far]
OK.  I'm proceding with the Slackware 8.1 load on two Maxtor 160Gig drives.

Here are the kernel boot options I've tried.

    bare.i hda=317632,16,63 hdc=317632,16,63

which produces these kernel boot messages....

    VP_IDE:VIA vt82c686b (rev 40) IDE UDMA100 controller on pc100:07.1
      ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA hdb:DMA
      ide1: BM-DMA at 0xd008-0xd08f, BIOS settings: hdc:DMA hdb:pio
    hda:Maxtor 4G160J8, ATA DISK drive
    hdb:Sony CDROM CDU5221
    hdc:Maxtor 4G160J8, ATA DISK drive
    ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
    ide1 at 0x170-0x177,0x376 on irq 16
    hda: 268435455 sectors (137439 MB) w/2048KiB Cache, CHS=317632/16/63,
UDMA(100)
    hdc: 268435455 sectors (137439 MB) w/2048KiB Cache, CHS=317632/16/63,
UDMA(100)

If I start 'cfdisk /dev/hda' then I get

    Disk Drive: /dev/hda
    Size 137{gig) bytes, 137.4 GB
    Heads:16  Sectors per Track: 63  Cylinders: 266305

SooOOoOoOoOoooOOoo.......  I tried 'cfdisk -c 317632 -h 16 -s 63 /dev/hda'
Well, cfdisk starts and shows me 163928.61 Megs of avalaible partition space
yet the cfdisk headers still maintain that I only have 137.4 GB and 266305
cylinders.

I went ahead and created my partitions...

    hdc1 - 30 meg     {for /boot}
    hdc2 - 128 meg     {swap}
    hdc3 - 4 gig         { / }
    hdc5 - 4 gig        { /user }
    hdc6 - 2 gig        { /var }
    hdc7 - 66 gig        { /home }
    hdc8 - 2 gig        { /tmp }
    hdc9 - 80 gig        { /data }
    hdc10 - 1978 meg    {/cache }

but when I tried to write it I got an error...

    FATAL ERROR: Cannot seek on disk drive
    press any key to exit cfdisk

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

Other options I've tried:

    bare.i ide0=0x1f0 ide1=0x170  [1]

    bare.i hda=317632,16,63 ide0=0x1f0 [2]

[1] kernel messages said ide0 and ide1 were in use and recognized the drives
as hde and hdf

[2] no noticible change as far as lilo was concerned.

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

What am I missing?

-Richard
[/my errors thus far]

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by B. Joshua Rose » Wed, 17 Jul 2002 22:17:51


What kind of IDE controller are you using? You need an ATA133 controller
to handle 160G drives. If you bought the Maxtor retail kit you should
have gotten a Promise ATA133 card, if you bought OEM drives then you'll
have to buy a Promise ATA133 card.

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by Richard G » Wed, 17 Jul 2002 22:49:01




Quote:> What kind of IDE controller are you using? You need an ATA133 controller
> to handle 160G drives. If you bought the Maxtor retail kit you should
> have gotten a Promise ATA133 card, if you bought OEM drives then you'll
> have to buy a Promise ATA133 card.

OK...well I'm off to order the (
http://www.maxtordirect.com/product.asp?sku=1856734 ) card.

Will I need to do anything special at that point or will the stock 2.4.18
kernel be enough?

-Richard

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by B. Joshua Rose » Thu, 18 Jul 2002 04:04:34





>> What kind of IDE controller are you using? You need an ATA133
>> controller to handle 160G drives. If you bought the Maxtor retail kit
>> you should have gotten a Promise ATA133 card, if you bought OEM drives
>> then you'll have to buy a Promise ATA133 card.

> OK...well I'm off to order the (
> http://www.maxtordirect.com/product.asp?sku=1856734 ) card.

> Will I need to do anything special at that point or will the stock
> 2.4.18 kernel be enough?

> -Richard

Stock kernel should do it.
 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by D. Stuss » Thu, 18 Jul 2002 04:36:21



>Distribution: Slackware 8.1
>System:  Athlon XP 1900 w/512 meg RAM and two Maxtor 160 Gig IDE hard drives

>Just what is the scoop on hard drives greater that 160 Gig in size?  Is they
>is or is they ain't supported.  I have found the Hedrick kernel patch (
>http://www.kernel.org/pub/linux/kernel/people/hedrick/ide-2.4.18/ ) and see
>stuff about 48 bit addressing in the patch but unfortunately am not exactly
>sure on how to actually patch the source.

>So is it the hedrick patch I want?  Can I install to the part of the drive I
>see...then install the patch and 'activate' the rest of the drive or will
>that cause partition problems?  Does anyone know where instructions to the
>hedrick kernel patches can be found? (or are there generic kernel patch
>instructions?)

1)  Yes, this is the correct patch.
2)  "Install to part of a drive"????  Do you understand what a patch is?  You're
changing the KERNEL - it's ALL or NOTHING on ALL DRIVES.
Quote:>[stuff in the hedrick patch]
>- * recal_intr() is invoked on completion of a WIN_RESTORE (recalibrate)
>cmd.
>+ * 268435455  == 137439 MB or 28bit limit
>+ * 320173056  == 163929 MB or 48bit addressing
>+ * 1073741822 == 549756 MB or 48bit addressing fake drive
>[/stuff in the hedrick patch]

>[my errors thus far]
>OK.  I'm proceding with the Slackware 8.1 load on two Maxtor 160Gig drives.

>Here are the kernel boot options I've tried.

>    bare.i hda=317632,16,63 hdc=317632,16,63

>which produces these kernel boot messages....

>    VP_IDE:VIA vt82c686b (rev 40) IDE UDMA100 controller on pc100:07.1
>      ide0: BM-DMA at 0xd000-0xd007, BIOS settings: hda:DMA hdb:DMA
>      ide1: BM-DMA at 0xd008-0xd08f, BIOS settings: hdc:DMA hdb:pio
>    hda:Maxtor 4G160J8, ATA DISK drive
>    hdb:Sony CDROM CDU5221
>    hdc:Maxtor 4G160J8, ATA DISK drive
>    ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
>    ide1 at 0x170-0x177,0x376 on irq 16
>    hda: 268435455 sectors (137439 MB) w/2048KiB Cache, CHS=317632/16/63,
>UDMA(100)
>    hdc: 268435455 sectors (137439 MB) w/2048KiB Cache, CHS=317632/16/63,
>UDMA(100)

>If I start 'cfdisk /dev/hda' then I get

>    Disk Drive: /dev/hda
>    Size 137{gig) bytes, 137.4 GB
>    Heads:16  Sectors per Track: 63  Cylinders: 266305

>SooOOoOoOoOoooOOoo.......  I tried 'cfdisk -c 317632 -h 16 -s 63 /dev/hda'
>Well, cfdisk starts and shows me 163928.61 Megs of avalaible partition space
>yet the cfdisk headers still maintain that I only have 137.4 GB and 266305
>cylinders.

>I went ahead and created my partitions...

>    hdc1 - 30 meg     {for /boot}
>    hdc2 - 128 meg     {swap}
>    hdc3 - 4 gig         { / }
>    hdc5 - 4 gig        { /user }
>    hdc6 - 2 gig        { /var }
>    hdc7 - 66 gig        { /home }
>    hdc8 - 2 gig        { /tmp }
>    hdc9 - 80 gig        { /data }
>    hdc10 - 1978 meg    {/cache }

>but when I tried to write it I got an error...

>    FATAL ERROR: Cannot seek on disk drive
>    press any key to exit cfdisk

>----------------------------

>Other options I've tried:

>    bare.i ide0=0x1f0 ide1=0x170  [1]

>    bare.i hda=317632,16,63 ide0=0x1f0 [2]

>[1] kernel messages said ide0 and ide1 were in use and recognized the drives
>as hde and hdf

>[2] no noticible change as far as lilo was concerned.

>------------------------------

>What am I missing?

>-Richard
>[/my errors thus far]

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by D. Stuss » Thu, 18 Jul 2002 04:37:54



>What kind of IDE controller are you using? You need an ATA133 controller
>to handle 160G drives. If you bought the Maxtor retail kit you should
>have gotten a Promise ATA133 card, if you bought OEM drives then you'll
>have to buy a Promise ATA133 card.

The latter statement is not true.  I run my Maxtor 160Gb drives off the
motherboard's IDe controller without any problem.
 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by B. Joshua Rose » Thu, 18 Jul 2002 05:28:44





>>What kind of IDE controller are you using? You need an ATA133 controller
>>to handle 160G drives. If you bought the Maxtor retail kit you should
>>have gotten a Promise ATA133 card, if you bought OEM drives then you'll
>>have to buy a Promise ATA133 card.

> The latter statement is not true.  I run my Maxtor 160Gb drives off the
> motherboard's IDe controller without any problem.

It may depend on your motherboard's ATA controller. 48 bit addressing was
added to the ATA spec as part of ATA133. It's possible that some IDE
controllers that predate ATA133 were designed with the capability of
being able to support 48 bit addressing, but it doesn't mean that all IDE
controllers can handle it. It sounds like the OP's system doesn't have 48
bit capability. The Promise Ultra133 card will fix the problem, it also
only costs about $25 so it's the simplest way to deal with the issue.
 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by Christoph Gysi » Thu, 18 Jul 2002 08:25:58


I heard that you'll have to get a ATA133 controller to access Maxtors
160GB's.
(Promise's Ultra133 for example)

Chris

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by Richard G » Thu, 18 Jul 2002 11:07:41




> >Distribution: Slackware 8.1
> >System:  Athlon XP 1900 w/512 meg RAM and two Maxtor 160 Gig IDE hard
drives

> >Just what is the scoop on hard drives greater that 160 Gig in size?  Is
they
> >is or is they ain't supported.  I have found the Hedrick kernel patch (
> >http://www.kernel.org/pub/linux/kernel/people/hedrick/ide-2.4.18/ ) and
see
> >stuff about 48 bit addressing in the patch but unfortunately am not
exactly
> >sure on how to actually patch the source.

> >So is it the hedrick patch I want?  Can I install to the part of the
drive I
> >see...then install the patch and 'activate' the rest of the drive or will
> >that cause partition problems?  Does anyone know where instructions to
the
> >hedrick kernel patches can be found? (or are there generic kernel patch
> >instructions?)

> 1)  Yes, this is the correct patch.
> 2)  "Install to part of a drive"????  Do you understand what a patch is?
You're
> changing the KERNEL - it's ALL or NOTHING on ALL DRIVES.

Let me re-word it and see if this makes any more sense.

Install to 'THE' part of the drive (that) I (can currently) see, then
install the (hedrick) patch [that will affect the ENTIRE DRIVE- YES!] {so
that the rest of the drive can be seen and addressed properly}.  Of course
once the hedrick patch is in place, my partition table will change because
all of a sudden....there's more room!  Well, let's just say I modify the
(new and improved, whiter than white, with a fresh clean taste) partition...
What then...does that corrupt my existing partitions?  I would expect that
it would corrupt the existing LILO configuration.

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by Richard G » Thu, 18 Jul 2002 23:15:47


These are my findings on this issue.  I don't claim to be 100% accurate with
all of this, but it's truth to me.

1) the Promise ATA-133 controller is *NOT* needed.
2) the Promise ATA-133 controller won't make things just magically work.
3) the Promise ATA-133 controller along with a stock 2.4.18 kernel does not
see > 137Gig drives
4) there is a 137 Gig limit in the Linux kernel. (specifically the 2.4.18
Kernel)
5) The 'hedrick' patch with the Auto-Geometry Resizing support (AGRS) option
allowed me to see all 160 Gigs on the Maxtor 160 Gig drives.

For those of you needing to use the 'hedrick' patch, the missing patch
installation instructions should be.

    cd /usr/download
    wget ftp.kernel.org/pub/linux/kernel/people/hedrick/2.4.18/ide{patch}.gz
    tar -zxvf /usr/download/ide{patch}
    cd /usr/src/linux
    patch -Np1 < /usr/download/ide{patch}

Slackware Linux 8.1 was installed on 137 gig partition of a 160 gig maxtor
drive.  After the kernel was recompiled with AGRS, the system was booted
with the new kernel and the 2nd 160 gig drive was fully partitioned and the
relevant directories moved to the full 160 gig partition.

THERE!

Humans-1; computer-0

-Richard  :)

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by w m » Fri, 19 Jul 2002 00:51:44



Quote:> What kind of IDE controller are you using? You need an ATA133 controller
> to handle 160G drives. If you bought the Maxtor retail kit you should
> have gotten a Promise ATA133 card, if you bought OEM drives then you'll
> have to buy a Promise ATA133 card.

Hmm, I have a Maxtor 160GB plugged into an 'ancient' ASUS P97D
(something like that) PIIX4 (ATA-33) mobo and it works dandy.

Is it really the controller chip interpreting the commands?  I thought
it passed them on to the drive who then told the chip what to do (like
interrupt or fetch some data via DMA, etc), though I've never studied
it in great detail.

The 48-bit addressing just consists of writing the high order bits
followed by the low order bits to the same registers, then issuing a
new command code.  It's not like they added new registers to the ATA
register set, they're just sort of 'hidden' in the drive, afaik.

Mike

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by Richard G » Fri, 19 Jul 2002 06:16:28





Quote:> > What kind of IDE controller are you using? You need an ATA133 controller
> > to handle 160G drives. If you bought the Maxtor retail kit you should
> > have gotten a Promise ATA133 card, if you bought OEM drives then you'll
> > have to buy a Promise ATA133 card.

> Hmm, I have a Maxtor 160GB plugged into an 'ancient' ASUS P97D
> (something like that) PIIX4 (ATA-33) mobo and it works dandy.

> Is it really the controller chip interpreting the commands?  I thought
> it passed them on to the drive who then told the chip what to do (like
> interrupt or fetch some data via DMA, etc), though I've never studied
> it in great detail.

> The 48-bit addressing just consists of writing the high order bits
> followed by the low order bits to the same registers, then issuing a
> new command code.  It's not like they added new registers to the ATA
> register set, they're just sort of 'hidden' in the drive, afaik.

> Mike

What do you get when you do an 'fdisk -s /dev/hda' (or whatever your hard
drive happens to be)
before I would get

    137004631

I now get...

    160086528

 
 
 

>137 Gig Hard drives / 2.4.18 and Maxtor 160 Gig HDD

Post by D. Stuss » Fri, 19 Jul 2002 06:42:37






>>>What kind of IDE controller are you using? You need an ATA133 controller
>>>to handle 160G drives. If you bought the Maxtor retail kit you should
>>>have gotten a Promise ATA133 card, if you bought OEM drives then you'll
>>>have to buy a Promise ATA133 card.

>> The latter statement is not true.  I run my Maxtor 160Gb drives off the
>> motherboard's IDe controller without any problem.

>It may depend on your motherboard's ATA controller. 48 bit addressing was
>added to the ATA spec as part of ATA133. It's possible that some IDE
>controllers that predate ATA133 were designed with the capability of
>being able to support 48 bit addressing, but it doesn't mean that all IDE
>controllers can handle it. It sounds like the OP's system doesn't have 48
>bit capability. The Promise Ultra133 card will fix the problem, it also
>only costs about $25 so it's the simplest way to deal with the issue.

True, but saying that one MUST buy a controller card without ascertaining that
the motherboard can or can't handle it isn't a valid position.