diff options
author | Peter Gill <Peter.Gill@Sun.COM> | 2010-05-10 14:31:40 -0400 |
---|---|---|
committer | Peter Gill <Peter.Gill@Sun.COM> | 2010-05-10 14:31:40 -0400 |
commit | 42bf653b44c42fc6b637ae50e590489d69399241 (patch) | |
tree | b3364ccffba6cb93825a6ad306fc7545d8116c81 | |
parent | c690e8405e15b1fe6f49347caf4294a3b199f2f3 (diff) | |
download | illumos-gate-42bf653b44c42fc6b637ae50e590489d69399241.tar.gz |
6942887 it_portal_delete() cooking up circular lists
-rw-r--r-- | usr/src/cmd/itadm/itadm.c | 5 | ||||
-rw-r--r-- | usr/src/common/iscsit/iscsit_common.c | 19 | ||||
-rw-r--r-- | usr/src/lib/libiscsit/common/libiscsit.c | 19 | ||||
-rw-r--r-- | usr/src/uts/common/io/comstar/port/iscsit/iscsit_isns.c | 5 | ||||
-rw-r--r-- | usr/src/uts/common/io/comstar/port/iscsit/iscsit_tgt.c | 5 | ||||
-rw-r--r-- | usr/src/uts/common/sys/iscsit/iscsit_common.h | 5 |
6 files changed, 26 insertions, 32 deletions
diff --git a/usr/src/cmd/itadm/itadm.c b/usr/src/cmd/itadm/itadm.c index 3b9726e77d..87a69717af 100644 --- a/usr/src/cmd/itadm/itadm.c +++ b/usr/src/cmd/itadm/itadm.c @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2010 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #include <stdlib.h> #include <stdio.h> @@ -1466,7 +1465,7 @@ list_tpg(char *tpg, boolean_t verbose, boolean_t script) first_portal = B_TRUE; portal = ptr->tpg_portal_list; - for (; portal != NULL; portal = portal->next) { + for (; portal != NULL; portal = portal->portal_next) { ret = sockaddr_to_str(&(portal->portal_addr), &pstr); if (ret != 0) { /* invalid addr? */ diff --git a/usr/src/common/iscsit/iscsit_common.c b/usr/src/common/iscsit/iscsit_common.c index 64725679a0..7b2b18e89a 100644 --- a/usr/src/common/iscsit/iscsit_common.c +++ b/usr/src/common/iscsit/iscsit_common.c @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2010 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #include <sys/time.h> @@ -828,7 +827,7 @@ it_tpg_to_nv(it_tpg_t *tpg, nvlist_t **nvl) if (ret != 0) { break; } - ptr = ptr->next; + ptr = ptr->portal_next; i++; } } @@ -1028,7 +1027,7 @@ it_portal_lookup(it_tpg_t *tpg, struct sockaddr_storage *sa) for (cfg_portal = tpg->tpg_portal_list; cfg_portal != NULL; - cfg_portal = cfg_portal->next) { + cfg_portal = cfg_portal->portal_next) { if (it_sa_compare(sa, &cfg_portal->portal_addr) == 0) return (cfg_portal); } @@ -1043,7 +1042,7 @@ it_sns_svr_lookup(it_config_t *cfg, struct sockaddr_storage *sa) for (cfg_portal = cfg->config_isns_svr_list; cfg_portal != NULL; - cfg_portal = cfg_portal->next) { + cfg_portal = cfg_portal->portal_next) { if (it_sa_compare(sa, &cfg_portal->portal_addr) == 0) return (cfg_portal); } @@ -1399,7 +1398,7 @@ it_array_to_portallist(char **arr, uint32_t count, uint32_t default_port, portal = NULL; break; } - tmp = tmp->next; + tmp = tmp->portal_next; } if (!portal) { @@ -1410,12 +1409,12 @@ it_array_to_portallist(char **arr, uint32_t count, uint32_t default_port, * The first time through the loop, *portallist == NULL * because we assigned it to NULL above. Subsequently * prev will have been set. Therefor it's OK to put - * lint override before prev->next assignment. + * lint override before prev->portal_next assignment. */ if (*portallist == NULL) { *portallist = portal; } else { - prev->next = portal; + prev->portal_next = portal; } prev = portal; @@ -1461,7 +1460,7 @@ it_config_free_cmn(it_config_t *cfg) it_portal_t *pp_next; while (pp) { - pp_next = pp->next; + pp_next = pp->portal_next; iscsit_free(pp, sizeof (it_portal_t)); pp = pp_next; } @@ -1548,7 +1547,7 @@ it_tpg_free_cmn(it_tpg_t *tpg) portalp = tpgp->tpg_portal_list; while (portalp) { - pnext = portalp->next; + pnext = portalp->portal_next; iscsit_free(portalp, sizeof (it_portal_t)); portalp = pnext; } diff --git a/usr/src/lib/libiscsit/common/libiscsit.c b/usr/src/lib/libiscsit/common/libiscsit.c index 8b4a86ac41..3025e45bc8 100644 --- a/usr/src/lib/libiscsit/common/libiscsit.c +++ b/usr/src/lib/libiscsit/common/libiscsit.c @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2010 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #include <sys/types.h> @@ -427,7 +426,7 @@ it_config_setprop(it_config_t *cfg, nvlist_t *proplist, nvlist_t **errlist) if (ret == 0) { isns = cfg->config_isns_svr_list; while (isns) { - pnext = isns->next; + pnext = isns->portal_next; free(isns); isns = pnext; } @@ -449,7 +448,7 @@ it_config_setprop(it_config_t *cfg, nvlist_t *proplist, nvlist_t **errlist) ret = ENOMEM; } else { for (isns = newisnslist; isns != NULL; - isns = isns->next) { + isns = isns->portal_next) { (void) sockaddr_to_str( &(isns->portal_addr), &(newarray[i++])); @@ -1200,7 +1199,7 @@ it_portal_create(it_config_t *cfg, it_tpg_t *tpg, it_portal_t **portal, ctpg = cfg->config_tpg_list; while (ctpg) { ptr = ctpg->tpg_portal_list; - for (; ptr != NULL; ptr = ptr->next) { + for (; ptr != NULL; ptr = ptr->portal_next) { if (it_sa_compare(&(ptr->portal_addr), &sa) != 0) { continue; } @@ -1226,7 +1225,7 @@ it_portal_create(it_config_t *cfg, it_tpg_t *tpg, it_portal_t **portal, (void) memcpy(&(ptr->portal_addr), &sa, sizeof (struct sockaddr_storage)); - ptr->next = tpg->tpg_portal_list; + ptr->portal_next = tpg->tpg_portal_list; tpg->tpg_portal_list = ptr; tpg->tpg_portal_count++; tpg->tpg_generation++; @@ -1253,7 +1252,7 @@ void it_portal_delete(it_config_t *cfg, it_tpg_t *tpg, it_portal_t *portal) { it_portal_t *ptr; - it_portal_t *prev; + it_portal_t *prev = NULL; if (!cfg || !tpg || !portal) { return; @@ -1266,7 +1265,7 @@ it_portal_delete(it_config_t *cfg, it_tpg_t *tpg, it_portal_t *portal) break; } prev = ptr; - ptr = ptr->next; + ptr = ptr->portal_next; } if (!ptr) { @@ -1274,9 +1273,9 @@ it_portal_delete(it_config_t *cfg, it_tpg_t *tpg, it_portal_t *portal) } if (prev) { - prev->next = ptr->next; + prev->portal_next = ptr->portal_next; } else { - tpg->tpg_portal_list = ptr->next; + tpg->tpg_portal_list = ptr->portal_next; } tpg->tpg_portal_count--; tpg->tpg_generation++; diff --git a/usr/src/uts/common/io/comstar/port/iscsit/iscsit_isns.c b/usr/src/uts/common/io/comstar/port/iscsit/iscsit_isns.c index 1c06e43bb8..2b610b5fa4 100644 --- a/usr/src/uts/common/io/comstar/port/iscsit/iscsit_isns.c +++ b/usr/src/uts/common/io/comstar/port/iscsit/iscsit_isns.c @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2009 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #include <sys/cpuvar.h> @@ -456,7 +455,7 @@ isnst_config_merge(it_config_t *cfg) /* Add new iSNS servers */ for (cfg_isns_svr = cfg->config_isns_svr_list; cfg_isns_svr != NULL; - cfg_isns_svr = cfg_isns_svr->next) { + cfg_isns_svr = cfg_isns_svr->portal_next) { isns_svr = iscsit_isns_svr_lookup(&cfg_isns_svr->portal_addr); if (isns_svr == NULL) { iscsit_add_isns(cfg_isns_svr); diff --git a/usr/src/uts/common/io/comstar/port/iscsit/iscsit_tgt.c b/usr/src/uts/common/io/comstar/port/iscsit/iscsit_tgt.c index 2752f5bdef..803ef239fb 100644 --- a/usr/src/uts/common/io/comstar/port/iscsit/iscsit_tgt.c +++ b/usr/src/uts/common/io/comstar/port/iscsit/iscsit_tgt.c @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2010 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #include <sys/cpuvar.h> @@ -1626,7 +1625,7 @@ iscsit_tpg_modify(iscsit_tpg_t *tpg, it_tpg_t *cfg_tpg) for (cfg_portal = cfg_tpg->tpg_portal_list; cfg_portal != NULL; - cfg_portal = cfg_portal->next) { + cfg_portal = cfg_portal->portal_next) { if ((portal = iscsit_tpg_portal_lookup_locked(tpg, &cfg_portal->portal_addr)) == NULL) { (void) iscsit_portal_create(tpg, diff --git a/usr/src/uts/common/sys/iscsit/iscsit_common.h b/usr/src/uts/common/sys/iscsit/iscsit_common.h index a2df85c5ff..4d5d58ef30 100644 --- a/usr/src/uts/common/sys/iscsit/iscsit_common.h +++ b/usr/src/uts/common/sys/iscsit/iscsit_common.h @@ -19,8 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2008 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. */ #ifndef _ISCSIT_COMMON_H_ @@ -202,7 +201,7 @@ typedef struct it_tgt_s { */ typedef struct it_portal_s { struct sockaddr_storage portal_addr; - struct it_portal_s *next; + struct it_portal_s *portal_next; } it_portal_t; /* |