Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
When `ip link del vrf1`, `zebra` have wrongly forgot it is a vrf type. It thought it is a normal interface. ``` ZEBRA: [KMXEB-K771Y] netlink_parse_info: netlink-listen (NS 0) type RTM_DELLINK(17), len=588, seq=0, pid=0 ZEBRA: [TDJW2-B9KJW] RTM_DELLINK for vrf1(148) <- Wrongly regarded as normal interface ZEBRA: [ZRQ6P-Y3WVQ] PIM: [W6DJA-XRCK3] PIM INTERFACE DOWN: on interface vrf1: link down ``` It triggers problems on clients. It will kept as an normal interface in 'show run' after even completely removed, as said in PR#13388. The clients will accept this wrong interface as normal, not vrf type: ``` interface vrf1 exit ``` Or ``` interface vrf1 ip ospf network broadcast exit ``` The root cause is that the `ifp->status`'s `ZEBRA_INTERFACE_VRF_LOOPBACK` flag of this vrf is cleared too early. After that clear, `zebra` ( and then clients ) will take it as normal interface. So, move it from "vrf1" to "default" VRF, then an unexpected interface is created. So, put the deletion of this flag at the last. Signed-off-by: anlan_cs <[email protected]>
- Loading branch information