de51123e

IDE лимит в 8 ГиБ


Драйвер IDE Линукс берет информацию о геометрии и емкости диска (и множество другой информации) используя ATA IDENTIFY запрос. До недавнего времени драйвер не верил возвращаемому значению lba_capacity если оно было более чем на 10% больше чем емкость вычисленная как C*H*S. Хотя,по соглашению производителей,большие IDE диски (с более чем 16514064 секторами) возвращают C=16383, H=16, S=63, что соотвествует 16514064 секторам (7.8 ГБ) независимо от их реальных значений, но lba_capacity соотвествует настоящему размеру.

Последние версии ядер Линукс (2.0.34, 2.1.90) знают о этом и действуют правильно. Если у вас более старое ядро и вы не хотите производить апгрейд, то вы можете попытаться изменить процедуру lba_capacity_is_ok в /usr/src/linux/drivers/block/ide.c приведя её примерно к такому виду:

static int lba_capacity_is_ok (struct hd_driveid *id) { id->cyls = id->lba_capacity / (id->heads * id->sectors); return 1; }

См. 2.1.90. (более хороший патч)



Содержание раздела