lkml.org 
[lkml]   [2006]   [Jan]   [15]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSun, 15 Jan 2006 03:13:05 -0500 (EST)
FromMatthew Schulkind <>
SubjectPossible IDE bug in 2.4 and 2.6
Hi,

First off, I'm not on the list, so please CC me on any replies.

I believe I have found a bug in the IDE code of both the 2.4 and 2.6 
kernels. Here is a snippet from 2.4.32 starting from line 277 of 
drivers/ide/ide-io.c:

if (drive->select.b.lba &&
                     (hwif->INB(IDE_COMMAND_REG) == WIN_SPECIFY))
                     /* some newer drives don't
                      * support WIN_SPECIFY
                      */
                     return ide_stopped;

This code is attempting to ignore IDE errors if they were a result of the 
WIN_SPECIFY command, but the IDE_COMMAND_REG is a write only register, if 
it is read, IDE_STATUS_REG is read instead. Could someone confirm that 
this is in fact a bug and not something I'm missing? Almost identical code 
is also found in 2.6 kernels.

I think the best way to fix this would be to ignore the error in 
set_geometry_intr() in ide-taskfile.c instead of in ide_error() as seen 
above.

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

\
 
 \ /
  Last update: 2006-01-15 09:16    [from the cache]
©2003-2008