Bug 11952 - 33.8 (65535/16/63) IDE large drive bug
Summary: 33.8 (65535/16/63) IDE large drive bug
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 6.1
Hardware: i386
OS: Linux
medium
high
Target Milestone: ---
Assignee: Michael K. Johnson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2000-06-07 15:05 UTC by Richard Rudell
Modified: 2008-05-01 15:37 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2000-06-07 15:05:51 UTC
Embargoed:


Attachments (Terms of Use)

Description Richard Rudell 2000-06-07 15:05:50 UTC
Attempting to install a 40 GB Maxtor drive.

Symptom: fdisk drive as one partition; correctly says 4982/255/63 for 
C/H/S.  Make an ext2 filesystem which appears to succeed.  Mount the 
filesystem -- get errors.  fsck the filesystem and see that block 517 is 
in two free lists at sectors 2 and 4120706.

Note that the delta between these is very close to 65535/16/63, indicating 
a 33.8GB bug.

This is a bug in the kernel drivers/block/ide-disk.c where a short 
overflows when attempting to compute the cyc value based on the bios 
values of 16/63 (and not the artifical values of 255/63).  This leads to 
attempts to write sector >= 66059280 (65535*16*63) to actually cause a 
write to the sector modulo this value leading to serious data corruption.

THIS IS FIXED IN 2.2.14 (RedHat 6.2) and presumably thereafter, although 
the version number of ide-disk.c didn't change (1.08)

The bug is present in 2.2.12 (RedHat 6.1).  Anyone attempting to use large 
ide drives should upgrade to RH 6.2.


Note You need to log in before you can comment on or make changes to this bug.