summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorZach Kissel <Zachary.Kissel@Sun.COM>2009-02-12 14:53:12 -0500
committerZach Kissel <Zachary.Kissel@Sun.COM>2009-02-12 14:53:12 -0500
commitd753835af57c7904d74f55a1251a643a5ddc47d1 (patch)
tree8497ad8b60032147da8e378a205a07a7c5ce8c5a /usr/src
parent23b519b21a3f023ca350e6d6dba37534db627839 (diff)
downloadillumos-joyent-d753835af57c7904d74f55a1251a643a5ddc47d1.tar.gz
6795836 vd_setup_vd()should handle errors from vd_identify_dev() better
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/sun4v/io/vds.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/usr/src/uts/sun4v/io/vds.c b/usr/src/uts/sun4v/io/vds.c
index b78dcb6b1d..548fc0f048 100644
--- a/usr/src/uts/sun4v/io/vds.c
+++ b/usr/src/uts/sun4v/io/vds.c
@@ -6530,9 +6530,13 @@ vd_setup_vd(vd_t *vd)
ddi_release_devi(dip);
VN_RELE(vnp);
- if (vd_identify_dev(vd, &drv_type) != 0) {
- PRN("%s identification failed", path);
- status = EIO;
+ if ((status = vd_identify_dev(vd, &drv_type)) != 0) {
+ if (status != ENODEV && status != ENXIO &&
+ status != ENOENT && status != EROFS) {
+ PRN("%s identification failed with status %d",
+ path, status);
+ status = EIO;
+ }
break;
}