Skip to content

Remove static route entries in FIB for nexthops that become unreachable - #4833

Merged
gizmoguy merged 1 commit into
faucetsdn:mainfrom
gizmoguy:del-dead-nexthop-static-routes
Sep 30, 2026
Merged

gizmoguy merged 1 commit into
faucetsdn:mainfrom
gizmoguy:del-dead-nexthop-static-routes

Conversation

@gizmoguy

@gizmoguy gizmoguy commented Jul 30, 2026 •

Copy link
Copy Markdown
Member

Currently when a gateway becomes unreachable that is a nexthop for a static route, only the host route is removed from the FIB, not the static routes.

This patch also expires the static routes to prevent unusable routes from existing in the FIB.

The test case for this patch requires the fix from #4827 to pass

@gizmoguy
gizmoguy force-pushed the del-dead-nexthop-static-routes branch 3 times, most recently from 16acce2 to 601f9e7 Compare July 31, 2026 02:20
@codecov

codecov Bot commented Jul 31, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.51%. Comparing base (7a6d362) to head (7ea0392).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4833      +/-   ##
==========================================
+ Coverage   91.49%   91.51%   +0.02%     
==========================================
  Files          46       46              
  Lines        8938     8940       +2     
==========================================
+ Hits         8177     8181       +4     
+ Misses        761      759       -2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@gizmoguy
gizmoguy force-pushed the del-dead-nexthop-static-routes branch 4 times, most recently from 73706dd to 18eb45e Compare July 31, 2026 03:03
@gizmoguy
gizmoguy force-pushed the del-dead-nexthop-static-routes branch from 18eb45e to 5c49d72 Compare September 16, 2026 21:57
@gizmoguy
gizmoguy force-pushed the del-dead-nexthop-static-routes branch from 5c49d72 to 7ea0392 Compare September 30, 2026 00:26
@gizmoguy
gizmoguy merged commit b1bf640 into faucetsdn:main Sep 30, 2026
21 checks passed
@gizmoguy
gizmoguy deleted the del-dead-nexthop-static-routes branch September 30, 2026 00:44
anarkiwi pushed a commit to c65sdn/faucet that referenced this pull request Oct 4, 2026
Cherry-pick key upstream commits enabling warm start for routed VLANs:

- PR faucetsdn#4815: Fix deleting final ACL from a port / del_vlan flowdel suppression
- PR faucetsdn#4819: ACL-only VLAN warm start without cold restart
- PR faucetsdn#4833: Remove static route entries from FIB for dead nexthops
- PR faucetsdn#4850: Enable warm start for VLANs with routing enabled

Adapted for c65of import namespace (fork divergence from os_ken).

Key changes:
- dp.py: separate tracking of added/changed/deleted/acl-only VLANs
- valve.py: proper warm start flow with nexthop expiry for sibling routed VLANs
- valve_route.py: expire nexthops, del_faucet_mac/vip flow cleanup, IPv4/IPv6
- valve_acl.py, valve_manager_base.py, valve_switch_standalone.py: signature updates
- valve_of.py: make _flowmodkey tuple comparable
- test infrastructure: l2_learn_host, l3_learn_host helpers, cold_start fixes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants