From: Артем Глазычев Date: Tue, 26 Aug 2025 12:04:58 +0000 (+0300) Subject: linux-cp: don't drain nl-messages during processing X-Git-Tag: v26.02-rc0~48 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F39%2F43639%2F2;p=vpp.git linux-cp: don't drain nl-messages during processing When we process the incoming netlink message queue and have NEW_LINK for a VLAN interface, we call lcp_itf_pair_add. Internally, drain is called, which corrupts the original vector (probably due to reallocation) Type: fix Change-Id: I0487bfb2939a04d8d3c156725086fedd6e9c72c7 Signed-off-by: Artem Glazychev --- diff --git a/src/plugins/linux-cp/lcp_nl.c b/src/plugins/linux-cp/lcp_nl.c index 55d2ea54245..95e1adc351d 100644 --- a/src/plugins/linux-cp/lcp_nl.c +++ b/src/plugins/linux-cp/lcp_nl.c @@ -756,7 +756,8 @@ lcp_nl_drain_messages (void) void lcp_nl_pair_add_cb (lcp_itf_pair_t *pair) { - lcp_nl_drain_messages (); + if (!lcp_get_netlink_processing_active ()) + lcp_nl_drain_messages (); } static clib_error_t *