summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/os/devcfg.c9
-rw-r--r--usr/src/uts/common/os/instance.c1
2 files changed, 6 insertions, 4 deletions
diff --git a/usr/src/uts/common/os/devcfg.c b/usr/src/uts/common/os/devcfg.c
index 91f5426e5d..aff1945f7f 100644
--- a/usr/src/uts/common/os/devcfg.c
+++ b/usr/src/uts/common/os/devcfg.c
@@ -5709,7 +5709,7 @@ devi_unconfig_one(dev_info_t *pdip, char *devnm, int flags)
ndi_devi_exit(pdip, circ);
if (vdip)
- ndi_devi_exit(pdip, v_circ);
+ ndi_devi_exit(vdip, v_circ);
return (rv);
}
@@ -5804,7 +5804,7 @@ ndi_devi_unconfig_one(
out:
ndi_devi_exit(pdip, circ);
if (vdip)
- ndi_devi_exit(pdip, v_circ);
+ ndi_devi_exit(vdip, v_circ);
pm_post_unconfig(pdip, pm_cookie, devnm);
@@ -7819,6 +7819,7 @@ int
e_ddi_unretire_device(char *path)
{
int circ;
+ int circ2;
char *path2;
dev_info_t *pdip;
dev_info_t *dip;
@@ -7868,9 +7869,9 @@ e_ddi_unretire_device(char *path)
(void) unmark_and_unfence(dip, path2);
if (!is_leaf_node(dip)) {
- ndi_devi_enter(dip, &circ);
+ ndi_devi_enter(dip, &circ2);
ddi_walk_devs(ddi_get_child(dip), unmark_and_unfence, path2);
- ndi_devi_exit(dip, circ);
+ ndi_devi_exit(dip, circ2);
}
kmem_free(path2, MAXPATHLEN);
diff --git a/usr/src/uts/common/os/instance.c b/usr/src/uts/common/os/instance.c
index 8fd596b00c..1e58309d8d 100644
--- a/usr/src/uts/common/os/instance.c
+++ b/usr/src/uts/common/os/instance.c
@@ -1321,6 +1321,7 @@ in_dq_drv(in_drv_t *mp)
prev->ind_next_drv = ptr->ind_next_drv;
return;
}
+ prev = ptr;
}
panic("in_dq_drv: in_drv not found on node driver list");
}