Nästa Föregående Innehållsförteckning

7. Linux 8 GB-begränsning för IDE

Linux IDE-drivrutin hämtar geometrin och hårddiskkapaciteten (och många andra saker) genom att använda ett ATA IDENTIFY-anrop. Tills nyligen trodde inte drivrutinen på det returnerade värdet från lba_capacity om det var mer än 10 % större än kapaciteten beräknad genom C*H*S. Nyare Quantum Bigfoot 12 GB-hårddiskar returnerar emellertid C=16383, H=16, S=63, vilket ger totalt 16514064 sektorer (7,8 GB) men rapporterar lba_capacity som 23547888 sektorer (det vill säga 11,2 GB, C=23361).

Nyare Linuxkärnor (2.0.34pre14, 2.1.90) känner till detta och beter sig rätt. Om du har en äldre Linuxkärna och inte vill uppgradera, och kärnan bara ser 8 GB av en mycket större hårddisk, kan du testa att ändra rutinen lba_capacity_is_ok i /usr/src/linux/drivers/block/ide.c till någonting likt

static int lba_capacity_is_ok (struct hd_driveid *id) {
        id->cyls = id->lba_capacity / (id->heads * id->sectors);
        return 1;
}
För en mer försiktig patch, se 2.1.90.
Nästa Föregående Innehållsförteckning