bgpd: Skip route-map LPM optimisation for AF_FLOWSPEC#22083
Conversation
|
@Mergifyio backport stable/10.6 stable/10.5 stable/10.4 stable/10.3 stable/10.2 |
✅ Backports have been createdDetails
Cherry-pick of 6038df7 has failed: To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally |
Greptile SummaryThis single-line condition change in
Confidence Score: 5/5Safe to merge — the change is a minimal, targeted guard that restores correct route-map evaluation for AF_FLOWSPEC without touching the LPM path used by IPv4/IPv6. The changed condition is small and surgical: it widens an existing family-bypass guard from AF_EVPN-only to all non-IPv4/IPv6 families. The LPM optimisation path for AF_INET/AF_INET6 is completely unchanged. The linear-walk path being restored for AF_FLOWSPEC was already in place and tested for AF_EVPN, so there is no new code to worry about. The accompanying comment clearly documents the reasoning. No files require special attention. The only change is in lib/routemap.c at the family-dispatch branch in route_map_apply_ext. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[route_map_apply_ext called] --> B{prefix->family}
B -->|AF_INET or AF_INET6| C[skip_match_clause = true\nroute_map_get_index LPM lookup]
B -->|AF_EVPN / AF_FLOWSPEC\nor any other family| D[index = map->head\nlinear walk, all clauses evaluated]
C --> E{index found?}
E -->|Yes| F[Loop: first clause skipped\nLPM already matched it]
E -->|No| G[RMAP_DENYMATCH or RMAP_PERMITMATCH\nbased on match_ret]
D --> H[Loop: every clause\nmatched explicitly]
F --> I[Apply set actions, continue / permit / deny]
H --> I
Reviews (1): Last reviewed commit: "bgpd: Skip route-map LPM optimisation fo..." | Re-trigger Greptile |
Reported-by: Qifan Zhang, Palo Alto Networks Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
b896782 to
6038df7
Compare
bgpd: Skip route-map LPM optimisation for AF_FLOWSPEC (backport #22083)
bgpd: Skip route-map LPM optimisation for AF_FLOWSPEC (backport #22083)
bgpd: Skip route-map LPM optimisation for AF_FLOWSPEC (backport #22083)
…0.5/pr-22083 bgpd: Skip route-map LPM optimisation for AF_FLOWSPEC (backport FRRouting#22083)
No description provided.