From 14fcc0e631cd171468e68dcf20cb177de63cc795 Mon Sep 17 00:00:00 2001 From: Joakim Tjernlund Date: Mon, 8 Mar 2010 13:58:14 +0100 Subject: [PATCH] ospfd: ospf_nbr_nbma_set()/ospf_snmp_vl_add() add unlock Signed-off-by: Joakim Tjernlund Acked-by: Feng Lu (cherry picked from commit 4de398e3b676bcf041984e285dba12f229215419) --- ospfd/ospf_snmp.c | 3 +++ ospfd/ospfd.c | 2 ++ 2 files changed, 5 insertions(+) diff --git a/ospfd/ospf_snmp.c b/ospfd/ospf_snmp.c index 9f91776944..604766d825 100644 --- a/ospfd/ospf_snmp.c +++ b/ospfd/ospf_snmp.c @@ -1927,6 +1927,9 @@ ospf_snmp_vl_add (struct ospf_vl_data *vl_data) lp.adv_router = vl_data->vl_peer; rn = route_node_get (ospf_snmp_vl_table, (struct prefix *) &lp); + if (rn->info) + route_unlock_node (rn); + rn->info = vl_data; } diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c index b4da733610..7af6ddc379 100644 --- a/ospfd/ospfd.c +++ b/ospfd/ospfd.c @@ -1830,6 +1830,8 @@ ospf_nbr_nbma_set (struct ospf *ospf, struct in_addr nbr_addr) p.prefixlen = IPV4_MAX_BITLEN; rn = route_node_get (ospf->nbr_nbma, (struct prefix *)&p); + if (rn->info) + route_unlock_node (rn); rn->info = nbr_nbma; for (ALL_LIST_ELEMENTS_RO (ospf->oiflist, node, oi)) -- 2.39.5