linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Weirdness in error handling in SCSI and block layers.
@ 2005-06-15 14:54 Alexander Sandler
  0 siblings, 0 replies; only message in thread
From: Alexander Sandler @ 2005-06-15 14:54 UTC (permalink / raw)
  To: linux-kernel

Hi list.

I recently noticed something wrong in error handling in between SCSI
and block device driver layers.

The problem is that SCSI errors are not actually passed to block
device layer. When scsi_end_request() calls end_that_request_chunk()
it passes only the uptodate value which set earlier, at the end of
scsi_io_completion(), and only indicate whether request succeeded or
failed. Eventually __end_that_request_first() calls bio_endio() with
either -EIO or uptodate value (that in case of success will be 0). As
a result, instead of getting error code that more or less indicates
what kind of error took place, block device layer always gets -EIO.

Any comments/ideas?

Alexander Sandler.

PS: Please CC to me.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-06-15 14:54 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-06-15 14:54 Weirdness in error handling in SCSI and block layers Alexander Sandler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).