public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* 2.4.x kernels, big ide disks and old bios
@ 2001-12-25 10:56 Josep Lladonosa i Capell
  2001-12-25 14:10 ` Santiago Garcia Mantinan
                   ` (2 more replies)
  0 siblings, 3 replies; 20+ messages in thread
From: Josep Lladonosa i Capell @ 2001-12-25 10:56 UTC (permalink / raw)
  To: linux-kernel

Hello,

the problem is this:

bios only supports disks up to 32 Gb.

hard disk is 60 Gb.

kernel is 2.4.17

hard disk reports its correct size when reading parameters from the
disk, not from the bios

verd:/proc/ide/hdc# cat geometry
physical     65530/16/63
logical      119150/16/63


when booting (dmesg):

hdc: IC35L060AVER07-0, ATA DISK drive
hdc: 66055247 sectors (33820 MB) w/1916KiB Cache, CHS=119150/16/63,
UDMA(33)


Linux adopts the 'false' geometry (65530/16/63) ) to bypass the bios
boot.



I know that there are patches for 2.2 kernels and 2.3 kernels, so as
linux adopts the logical geometry (a kiddy trick with lba size). They
are very simple (a line), but 2.4 ide implementation is (a little more)
complicated. Any patch?

Bon Nadal - Merry Christmas

--
Salutacions...Josep
http://www.geocities.com/SiliconValley/Horizon/1065/
--




^ permalink raw reply	[flat|nested] 20+ messages in thread
* Re: 2.4.x kernels, big ide disks and old bios
@ 2001-12-25 16:38 Andries.Brouwer
  2001-12-25 22:52 ` Eric Lammerts
  2001-12-26 10:39 ` Santiago Garcia Mantinan
  0 siblings, 2 replies; 20+ messages in thread
From: Andries.Brouwer @ 2001-12-25 16:38 UTC (permalink / raw)
  To: jlladono; +Cc: linux-kernel

Josep Lladonosa i Capell:

> Linux adopts the 'false' geometry (65530/16/63) ) to bypass the bios
> boot.

You can see that this is the wrong way around.
When you start your computer, first the BIOS boots, then Linux.
But maybe you mean to say that you set a jumper on the disk
so as to bypass the BIOS boot problem, and that as a result
also Linux sees a smaller disk?

> hdc: IC35L060AVER07-0, ATA DISK drive
> hdc: 66055247 sectors (33820 MB) w/1916KiB Cache, CHS=119150/16/63,

Funny. Where did this CHS come from? Did you give boot parameters?

> setmax.c does its job for my ide ibm - 60Gb, but kernel
> leaves bios parameters - 32Gb

Can you be more explicit? What precisely do you do?
Call setmax in a boot script? And afterwards you can access
the entire disk, but some proc files still mention the old
geometry? Or are there any real problems?
What precisely do you mean by "kernel leaves bios parameters"?


Santiago Garcia Mantinan:

: What I'm using is change the geometry after the boot and before any
: partition besides root is mounted, I do this at the beginning of
: checkroot.sh by calling "/sbin/setmax -d 0 /dev/hda"
: This works ok for me, of course you can have other solutions.

Good to hear that it works OK. Sooner or later setmax or something
similar must become part of the standard kernel, but so far I've
gotten almost no feedback. Can you give the disk manufacturer and model
(mail aeb@cwi.nl)?

Andries

^ permalink raw reply	[flat|nested] 20+ messages in thread
* Re: 2.4.x kernels, big ide disks and old bios
@ 2001-12-26  2:12 Andries.Brouwer
  0 siblings, 0 replies; 20+ messages in thread
From: Andries.Brouwer @ 2001-12-26  2:12 UTC (permalink / raw)
  To: Andries.Brouwer, eric; +Cc: linux-kernel

> The kernel part is already there in Andre Hedrick's IDE-patches

Yes. By some coincidence this code fails on my Maxtor,
but it will work on most disks.

Andries

^ permalink raw reply	[flat|nested] 20+ messages in thread
* Re: 2.4.x kernels, big ide disks and old bios
@ 2001-12-30  2:47 Andries.Brouwer
  0 siblings, 0 replies; 20+ messages in thread
From: Andries.Brouwer @ 2001-12-30  2:47 UTC (permalink / raw)
  To: jlladono; +Cc: linux-kernel

> # cat /proc/ide/hdc/settings
> name                    value           min             max             mode
> ----                    -----           ---             ---             ----
> bios_cyl                119150          0               65535           rw
> bios_head               16              0               255             rw
> bios_sect               63              0               63              rw

> What's the meaning of the 65535 max limit in bios_cyl?

It is meaningless.

(Maybe there was some meaning long ago, for example because
HDIO_GETGEO only uses a 16-bit field for #cyls.
These days bios_cyl is not used anywhere. Not in the kernel,
not in user space. It is just some random number, computed
by taking disk-size / (heads*secs).)

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2001-12-30  9:34 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-12-25 10:56 2.4.x kernels, big ide disks and old bios Josep Lladonosa i Capell
2001-12-25 14:10 ` Santiago Garcia Mantinan
2001-12-25 19:09 ` James Stevenson
2001-12-26 16:33   ` Stephan von Krawczynski
2001-12-27 13:14     ` James Stevenson
2001-12-27 18:51       ` Stephan von Krawczynski
2001-12-27 19:53         ` Ido Diamant
2001-12-27 22:41         ` Guest section DW
2001-12-27 23:04           ` Stephan von Krawczynski
2001-12-28  0:06             ` [PATCH] " Eric Lammerts
2001-12-28  3:29             ` Andre Hedrick
2001-12-30  1:40               ` Josep Lladonosa i Capell
2001-12-28 21:52 ` Jorge Nerin
2001-12-30  9:33   ` Josep Lladonosa i Capell
  -- strict thread matches above, loose matches on Subject: below --
2001-12-25 16:38 Andries.Brouwer
2001-12-25 22:52 ` Eric Lammerts
2001-12-26  9:28   ` Josep Lladonosa i Capell
2001-12-26 10:39 ` Santiago Garcia Mantinan
2001-12-26  2:12 Andries.Brouwer
2001-12-30  2:47 Andries.Brouwer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox