lkml.org 
[lkml]   [2005]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: I/O error propagation
On Thu, 3 Mar 2005, V P wrote:

> Hi,
>
> I have a question on how disk errors get propagated to
> the file systems.
>
>> From looking at the SCSI/IDE drivers, it looks like there
> could be many reasons for an I/O to fail. It could be
> bus timeout, media errors, and so on.
>
> Does all these errors get reported to the file system ?
> It looks like all the different types of errors get
> turned into a single I/O error (-EIO) and passed on to the
> file system.
>
> Or is there a way where we can export better error codes
> to the file system ?
>
> Any idea/input regarding this is greatly appreciated.
>
> Thanks.

It depends upon the disk devices, i.e., IDE SCSI, etc., but in
general all errors reported by the hardware result in retrying
the operation. If the retry fails after several (device dependent)
attempts, the actual error is reported as a kernel message. These
errors can be retrieved using the `dmesg` command and they
will usually be retained in some kernel log in /var/log (actual
log-name is vendor dependent).

Following the Unix convention, any errors reported back upstream,
eventually to the user, get reported ONLY as something defined
in /usr/include/errno.h (which includes others, ultimately
/usr/asm/errno.h).

So, you don't need to reinvent anything. If you have hardware
errors they will be reported in /var/log/messages (or whatever)
and if you are making a new driver, you are expected to comply
with the same protocol.

Cheers,
Dick Johnson
Penguin : Linux version 2.6.10 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.
-
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: 2005-03-22 14:10    [from the cache]
©2003-2011 Jasper Spaans