summaryrefslogtreecommitdiffstats
path: root/drivers/s390/block/dasd_diag.c
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_diag.c
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_diag.c')
-rw-r--r--drivers/s390/block/dasd_diag.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/block/dasd_diag.c b/drivers/s390/block/dasd_diag.c
index 2efaddfae560..644086ba2ede 100644
--- a/drivers/s390/block/dasd_diag.c
+++ b/drivers/s390/block/dasd_diag.c
@@ -202,6 +202,7 @@ dasd_start_diag(struct dasd_ccw_req * cqr)
rc = -EIO;
break;
}
+ cqr->intrc = rc;
return rc;
}