summaryrefslogtreecommitdiffstats
path: root/drivers/s390/block/dasd_int.h
diff options
context:
space:
mode:
authorStefan Weinhuber <wein@de.ibm.com>2009-06-12 10:26:39 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2009-06-12 10:27:36 +0200
commit6cc7f168954fe8b3d8988a90b2478a9c11c5ebcb (patch)
treede3ee836f75f4cd1010a78c49d42393198b6f955 /drivers/s390/block/dasd_int.h
parent[S390] dasd: sync after async probe (diff)
downloadlinux-6cc7f168954fe8b3d8988a90b2478a9c11c5ebcb.tar.xz
linux-6cc7f168954fe8b3d8988a90b2478a9c11c5ebcb.zip
[S390] dasd: forward internal errors to dasd_sleep_on caller
If a DASD requests is started with dasd_sleep_on and fails, then the calling function may need to know the reason for the failure. In cases of hardware errors it can inspect the sense data in the irb, but when the reason is internal (e.g. start_IO failed) then it needs a meaningfull return code. Signed-off-by: Stefan Weinhuber <wein@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block/dasd_int.h')
-rw-r--r--drivers/s390/block/dasd_int.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/block/dasd_int.h b/drivers/s390/block/dasd_int.h
index 3ab69b5a41f6..f97ceb795078 100644
--- a/drivers/s390/block/dasd_int.h
+++ b/drivers/s390/block/dasd_int.h
@@ -173,6 +173,7 @@ struct dasd_ccw_req {
void *data; /* pointer to data area */
/* these are important for recovering erroneous requests */
+ int intrc; /* internal error, e.g. from start_IO */
struct irb irb; /* device status in case of an error */
struct dasd_ccw_req *refers; /* ERP-chain queueing. */
void *function; /* originating ERP action */