]> git.puffer.fish Git - mirror/frr.git/commitdiff
zebra: unlock node only after operation in zebra_free_rnh() 17133/head
authorEnke Chen <enchen@paloaltonetworks.com>
Tue, 15 Oct 2024 17:23:10 +0000 (10:23 -0700)
committerMergify <37929162+mergify[bot]@users.noreply.github.com>
Wed, 16 Oct 2024 05:15:09 +0000 (05:15 +0000)
Move route_unlock_node() after rnh_list_del().

Signed-off-by: Enke Chen <enchen@paloaltonetworks.com>
(cherry picked from commit 5b6ff51b8ae7f8c7348cea4de9543956f32641a7)

zebra/zebra_rnh.c

index 28b83ce8b6f6e139f45b47c8a3c0334cbbb95210..74aec5600fffc010705c87e85a5a9ef2d78b093b 100644 (file)
@@ -220,10 +220,9 @@ void zebra_free_rnh(struct rnh *rnh)
                if (rern) {
                        rib_dest_t *dest;
 
-                       route_unlock_node(rern);
-
                        dest = rib_dest_from_rnode(rern);
                        rnh_list_del(&dest->nht, rnh);
+                       route_unlock_node(rern);
                }
        }
        free_state(rnh->vrf_id, rnh->state, rnh->node);