mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-15 08:57:29 +00:00
bgpd: backpressure - log error for evpn when route install to zebra fails.
log error for evpn in case route install to zebra fails. Ticket :#3992392 Signed-off-by: Rajasekar Raja <rajasekarr@nvidia.com>
This commit is contained in:
parent
c4bbb5b436
commit
6cf5b79311
@ -1785,6 +1785,7 @@ static void bgp_handle_route_announcements_to_zebra(struct event *e)
|
|||||||
struct bgp_table *table = NULL;
|
struct bgp_table *table = NULL;
|
||||||
enum zclient_send_status status = ZCLIENT_SEND_SUCCESS;
|
enum zclient_send_status status = ZCLIENT_SEND_SUCCESS;
|
||||||
bool install;
|
bool install;
|
||||||
|
const struct prefix_evpn *evp = NULL;
|
||||||
|
|
||||||
while (count < ZEBRA_ANNOUNCEMENTS_LIMIT) {
|
while (count < ZEBRA_ANNOUNCEMENTS_LIMIT) {
|
||||||
is_evpn = false;
|
is_evpn = false;
|
||||||
@ -1796,8 +1797,11 @@ static void bgp_handle_route_announcements_to_zebra(struct event *e)
|
|||||||
|
|
||||||
table = bgp_dest_table(dest);
|
table = bgp_dest_table(dest);
|
||||||
install = CHECK_FLAG(dest->flags, BGP_NODE_SCHEDULE_FOR_INSTALL);
|
install = CHECK_FLAG(dest->flags, BGP_NODE_SCHEDULE_FOR_INSTALL);
|
||||||
if (table->afi == AFI_L2VPN && table->safi == SAFI_EVPN)
|
if (table->afi == AFI_L2VPN && table->safi == SAFI_EVPN) {
|
||||||
is_evpn = true;
|
is_evpn = true;
|
||||||
|
evp = (const struct prefix_evpn *)bgp_dest_get_prefix(
|
||||||
|
dest);
|
||||||
|
}
|
||||||
|
|
||||||
if (BGP_DEBUG(zebra, ZEBRA))
|
if (BGP_DEBUG(zebra, ZEBRA))
|
||||||
zlog_debug("BGP %s%s route %pBD(%s) with dest %p and flags 0x%x to zebra",
|
zlog_debug("BGP %s%s route %pBD(%s) with dest %p and flags 0x%x to zebra",
|
||||||
@ -1835,6 +1839,17 @@ static void bgp_handle_route_announcements_to_zebra(struct event *e)
|
|||||||
UNSET_FLAG(dest->flags, BGP_NODE_SCHEDULE_FOR_DELETE);
|
UNSET_FLAG(dest->flags, BGP_NODE_SCHEDULE_FOR_DELETE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (is_evpn && status == ZCLIENT_SEND_FAILURE)
|
||||||
|
flog_err(EC_BGP_EVPN_FAIL,
|
||||||
|
"%s (%u): Failed to %s EVPN %pFX %s route in VNI %u",
|
||||||
|
vrf_id_to_name(table->bgp->vrf_id),
|
||||||
|
table->bgp->vrf_id,
|
||||||
|
install ? "install" : "uninstall", evp,
|
||||||
|
evp->prefix.route_type == BGP_EVPN_MAC_IP_ROUTE
|
||||||
|
? "MACIP"
|
||||||
|
: "IMET",
|
||||||
|
dest->za_vpn->vni);
|
||||||
|
|
||||||
bgp_path_info_unlock(dest->za_bgp_pi);
|
bgp_path_info_unlock(dest->za_bgp_pi);
|
||||||
dest->za_bgp_pi = NULL;
|
dest->za_bgp_pi = NULL;
|
||||||
dest->za_vpn = NULL;
|
dest->za_vpn = NULL;
|
||||||
|
Loading…
Reference in New Issue
Block a user