diff options
author | Jerry Gilliam <Jerry.Gilliam@Sun.COM> | 2010-04-27 12:57:25 -0700 |
---|---|---|
committer | Jerry Gilliam <Jerry.Gilliam@Sun.COM> | 2010-04-27 12:57:25 -0700 |
commit | 6c70e1f8664091bc261a485f4d90aa82225427e5 (patch) | |
tree | eeee563623222e5bc16a15da03da45582f675e07 /usr/src/lib/libdevinfo/devinfo.c | |
parent | 90aaf3555d92da01feb564979c25efe106140674 (diff) | |
download | illumos-joyent-6c70e1f8664091bc261a485f4d90aa82225427e5.tar.gz |
6945467 AI image fails to boot in x86 machines due to devfsadm -r core dump in snv_138
Diffstat (limited to 'usr/src/lib/libdevinfo/devinfo.c')
-rw-r--r-- | usr/src/lib/libdevinfo/devinfo.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/usr/src/lib/libdevinfo/devinfo.c b/usr/src/lib/libdevinfo/devinfo.c index 1222707c36..68e51960a2 100644 --- a/usr/src/lib/libdevinfo/devinfo.c +++ b/usr/src/lib/libdevinfo/devinfo.c @@ -3710,7 +3710,8 @@ alias_to_curr(di_node_t anynode, char *devfspath, di_node_t *nodep) *nodep = NULL; - assert(anynode != DI_NODE_NIL); + if (anynode == DI_NODE_NIL || devfspath == NULL) + return (NULL); pa = (caddr_t)anynode - DI_NODE(anynode)->self; all = DI_ALL(pa); @@ -3858,8 +3859,12 @@ char * di_alias2curr(di_node_t anynode, char *alias) { di_node_t currnode = DI_NODE_NIL; - char *curr = alias_to_curr(anynode, alias, &currnode); + char *curr; + + if (anynode == DI_NODE_NIL || alias == NULL) + return (NULL); + curr = alias_to_curr(anynode, alias, &currnode); if (curr == NULL && currnode != DI_NODE_NIL) { return (di_devfs_path(currnode)); } else if (curr == NULL) { |