Skip to contentSkip to conversation

2.5.30 IDE 112

PATCH Petr Vandrovec 4 participants 4 messages Aug 6, 2002

lore
Share & tools
lore
#0 lore raw
Quoted 6 lines · Andries Brouwer
Quoted 1 line · Marcin Dalecki

- Just removaing dead obscure xlate_1024 code.

Command line options must be added to ask for what this xlate_1024 code did earlier. So, some fragments of what you remove in this patch will have to come back in some form.

FYI I had to use hda=cyls,255,63 to repartition my HDD. BIOS refused to report proper size (120GB) when partition table was empty, or when it contained partitions created for xxx/16/63 geometry. It reported size ~600MB, and actively refused to allow access above this limit...

With removed (either completely, or just disabling as it is now) xlate_1024 code please talk to [cs]fdisk maintainer (and other) to print big fat warning and to allow specify BIOS heads/sectors, otherwise partitioning of empty disk in the way compatible with non-Linux OSes (Netware, Windows) is not an easy task.
Petr Vandrovec

# lilo
Warning: Int 0x13 function 8 and function 0x48 return different
head/sector geometries for BIOS drive 0x81
    fn 08: 788 cylinders, 255 heads, 63 sectors
    fn 48: 13424 cylinders, 15 heads, 63 sectors
Warning: Kernel & BIOS return differing head/sector geometries for device 0x80
    Kernel: 35973 cylinders, 16 heads, 63 sectors
      BIOS: 1023 cylinders, 255 heads, 63 sectors
#1 lore raw

Uz.ytkownik Petr Vandrovec napisa?:

Quoted 16 lines · Andries Brouwer
Quoted 8 lines · Marcin Dalecki
Quoted 2 lines

- Just removaing dead obscure xlate_1024 code.

Command line options must be added to ask for what this xlate_1024 code did earlier. So, some fragments of what you remove in this patch will have to come back in some form.

FYI I had to use hda=cyls,255,63 to repartition my HDD. BIOS refused to report proper size (120GB) when partition table was empty, or when it contained partitions created for xxx/16/63 geometry. It reported size ~600MB, and actively refused to allow access above this limit...

Quoted 5 lines

With removed (either completely, or just disabling as it is now) xlate_1024 code please talk to [cs]fdisk maintainer (and other) to print big fat warning and to allow specify BIOS heads/sectors, otherwise partitioning of empty disk in the way compatible with non-Linux OSes (Netware, Windows) is not an easy task.

Sidenote 1. - they can do the recalculation done by xlate_1024 themself of course.

Sidenote 2. - Linux is thinking xxx/16/63 is the best way to deal with big disks. Phenix BIOS docu says xxxx/255/63 is the way to go.

#2 lore raw

Martin,

I had this battle a long time ago.
Every little bit of disk that is out there, regardless if they should be orphaned sectors or not, people want access. This includes having the kernel do stupid things like seek beyond media.

Just leave it alone.

Once all devices are 48-bit capable, then the game is over.

"All 48-bit capable shall be LBA addressed".

Nobody can force CHS crap down the pipes and thus the game is over on the stupid concept of XXX/16/63! Until then do everyone a favor and listen and learn from AEB, okay?

Regards,

Andre Hedrick
LAD Storage Consulting Group

Quoted 36 lines · Marcin Dalecki

Uz.ytkownik Petr Vandrovec napisa?:

Quoted 16 lines · Andries Brouwer
Quoted 8 lines · Marcin Dalecki
Quoted 2 lines

- Just removaing dead obscure xlate_1024 code.

Command line options must be added to ask for what this xlate_1024 code did earlier. So, some fragments of what you remove in this patch will have to come back in some form.

FYI I had to use hda=cyls,255,63 to repartition my HDD. BIOS refused to report proper size (120GB) when partition table was empty, or when it contained partitions created for xxx/16/63 geometry. It reported size ~600MB, and actively refused to allow access above this limit...

Quoted 5 lines

With removed (either completely, or just disabling as it is now) xlate_1024 code please talk to [cs]fdisk maintainer (and other) to print big fat warning and to allow specify BIOS heads/sectors, otherwise partitioning of empty disk in the way compatible with non-Linux OSes (Netware, Windows) is not an easy task.

Sidenote 1. - they can do the recalculation done by xlate_1024 themself of course.

Sidenote 2. - Linux is thinking xxx/16/63 is the best way to deal with big disks. Phenix BIOS docu says xxxx/255/63 is the way to go.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

#3 lore raw
In reply to Petr Vandrovec
Quoted 1 line · Petr Vandrovec

FYI I had to use hda=cyls,255,63 to repartition my HDD.

(Or set H=255 S=63 in *fdisk.)

Quoted 4 lines

BIOS refused to report proper size (120GB) when partition table was empty, or when it contained partitions created for xxx/16/63 geometry. It reported size ~600MB, and actively refused to allow access above this limit...

Funny. Do you mean that your BIOS used SETMAX ?

Quoted 4 lines

please talk to [cs]fdisk maintainer (and other) to print big fat warning and to allow specify BIOS heads/sectors, otherwise partitioning of empty disk in the way compatible with non-Linux OSes (Netware, Windows) is not an easy task.

Yes. I already advised this maintainer to add -C,-H,-S options to fdisk (cfdisk and sfdisk already have them), and he did so immediately. Visible one of these weeks in util-linux-2.11v.

Quoted 8 lines
# lilo
Warning: Int 0x13 function 8 and function 0x48 return different
head/sector geometries for BIOS drive 0x81
    fn 08: 788 cylinders, 255 heads, 63 sectors
    fn 48: 13424 cylinders, 15 heads, 63 sectors
Warning: Kernel & BIOS return differing head/sector geometries for device 0x80
    Kernel: 35973 cylinders, 16 heads, 63 sectors
      BIOS: 1023 cylinders, 255 heads, 63 sectors

Since geometry does not exist, it is not surprising that everybody invents something else. Not only do kernel and BIOS differ, but BIOS is not consistent internally.

For a while, with disk sizes between 500 MB and 8 GB, maximum DOS-accessible capacity was obtained by H=255 S=63. But IDE accepts at most 16 heads, so H=255 requires a translating BIOS. For sizes above 8 GB the translation is useless and will only take some small amount of time.
Setting the disk to Normal (instead of Large / LBA / Extended or so) works best.

So, I have two questions:
1. What precisely do you mean with "actively refused" ?
2. Is there a Windows or Netware reason to prefer extended translation above no translation?

Andries