Bug 141717 - IDE "stroke" not correctly resetting full capacity
Summary: IDE "stroke" not correctly resetting full capacity
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 3
Hardware: All
OS: Linux
medium
low
Target Milestone: ---
Assignee: Alan Cox
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-12-03 05:30 UTC by Joe Krahn
Modified: 2007-11-30 22:10 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-09-29 07:28:43 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Joe Krahn 2004-12-03 05:30:17 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5)
Gecko/20041107 Firefox/1.0

Description of problem:
I have a system with an older BIOS that has a 32G limit. Using the IDE
size-limit jumpers and IDE "stroke" (which was a config option and is
now a kernel parameter) is supposed to work around this issue. The
problem is that the kernel is using the LBA48 SET_MAX_EXT command,
which causes the attached Maxtor 4R120L4 drive to start spewing errors.

The good news is that the LBA28 SET_MAX does work, and can be used to
work around the issue by running the old "setmax.c" program at the
beginning of /etc/rc.sysinit, with -d0, to reset the full disk capacity.

It seems that this drive does support LBA48 I/O, but not the LBA48
SET_MAX_EXT.

I suspect not many live BIOSes cannot handle LBA48, so it is likely a
rare problem. (This system is an HP NetServer -- not all that old, but
the BIOS assumes a SCSI-based system.)


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. Install a Maxtor 4R120L4 with size-limit jumper in place
2. Boot with hdx=stroke

    

Actual Results:  Hundreds of drive error messages occur after the
command is sent.

Expected Results:  Drive capacity goes from 32G to 120G

Additional info:

Probably not worth a lot of effort, but at least pass this info on to
an ide-disk maintainer. Otherwise, any other people with this issue
can use the setmax.c work-around.

Comment 1 Alan Cox 2004-12-03 12:28:22 UTC
Makes sense. We had a similar problem with some other Maxtors that report
slightly odd but valid feature combinations. Will take a look.


Comment 2 Joe Krahn 2004-12-04 05:10:03 UTC
It occured to me that any disk that can handle SET_MAX but not SET_MAX_EXT has
to be under the LBA28 size limit, so one way to fix this is a kernel parameter
to force LBA28. There is a no_lba48 flag, but it seems that right now only the
low-level IDE drivers change this.

Comment 3 Alan Cox 2004-12-04 13:44:34 UTC
The change I've dropped into -ac for testing tries to use LBA48 disk size read,
then if that fails LBA28 disk size read. That should be fine anyway. If the new
size is within LBA28 range it issues the LBA28 command regardless of the drive
claims.


Comment 4 Bartlomiej Zolnierkiewicz 2004-12-07 15:06:42 UTC
Joe, what IDE controller is this disk connected to?


Comment 5 Alan Cox 2005-06-06 18:25:38 UTC
Should be fixed in the FC4 kernel, please retest

(Bartlomiej - if this is fixed in FC4 its a bug in the -ac patches that isnt in
base so don't worry about it)


Comment 6 Dave Jones 2005-07-15 20:02:58 UTC
An update has been released for Fedora Core 3 (kernel-2.6.12-1.1372_FC3) which
may contain a fix for your problem.   Please update to this new kernel, and
report whether or not it fixes your problem.

If you have updated to Fedora Core 4 since this bug was opened, and the problem
still occurs with the latest updates for that release, please change the version
field of this bug to 'fc4'.

Thank you.


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