diff options
| author | Olivier Cochard <olivier@FreeBSD.org> | 2026-03-05 11:02:20 +0000 |
|---|---|---|
| committer | Olivier Cochard <olivier@FreeBSD.org> | 2026-03-05 11:02:20 +0000 |
| commit | 9f71153aec0cb455cd49af6d4ca7e4c16fd45d7a (patch) | |
| tree | 129ae7bddba130bcffb4cfdcb00d64d0d56a4014 /tools/regression/(public-mirror) | |
| parent | 4dd517acb6949d6fed5b16f26fbffb150749b121 (diff) | |
When net.inet.carp.preempt=1 and a physical interface goes down, the global
V_carp_demotion counter is incremented. For CARP this was already reflected in
outgoing advertisements via DEMOTE_ADVSKEW(), but VRRP sent the raw
sc_vrrp_prio unchanged, so demotion had no effect.
Add DEMOTE_VRRP_PRIO(), a macro analogous to DEMOTE_ADVSKEW():
It subtracts V_carp_demotion from the configured priority and clamps the result
to [0, 254]. Priority 0 is VRRPv3's "resign" signal and causes backups to
preempt immediately. Priority 255 (IP address owner) is never demoted.
Reviewed by: kp
Approved by: kp
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D55558
Diffstat (limited to 'tools/regression/(public-mirror)')
0 files changed, 0 insertions, 0 deletions
