summaryrefslogtreecommitdiff
path: root/src/services/vyos-commitd
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2026-10-08 09:48:58 +0200
committerGitHub <noreply@github.com>2026-10-08 09:48:58 +0200
commit1ac0219e62c7b0efee9e81e7266558dffc7b14e6 (patch)
tree939dd231290038223b5aaf73a93d0f49c57279ca /src/services/vyos-commitd
parent4bc4755d4279066e8a580bdc1f018c4b53b08cad (diff)
parent7a642d9675bafbc18284c9d315662cde6ea1e8fd (diff)
downloadvyos-1x-1ac0219e62c7b0efee9e81e7266558dffc7b14e6.tar.gz
vyos-1x-1ac0219e62c7b0efee9e81e7266558dffc7b14e6.zip
Merge pull request #5520 from c-po/T9278-frr-render-without-configd
configd: T9368: reconcile FRR after a DHCP lease without the commit socket
Diffstat (limited to 'src/services/vyos-commitd')
-rwxr-xr-xsrc/services/vyos-commitd12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/services/vyos-commitd b/src/services/vyos-commitd
index b8e430b93..8a515446b 100755
--- a/src/services/vyos-commitd
+++ b/src/services/vyos-commitd
@@ -45,6 +45,7 @@ from vyos.configsource import ConfigSourceError
from vyos.configdiff import get_commit_scripts
from vyos.config import Config
from vyos.frrender import FRRender
+from vyos.frrender import frr_render_lock
from vyos.frrender import get_frrender_dict
from vyos import ConfigError
@@ -293,11 +294,12 @@ def call_frr_render(frr, config):
def _call_frr_render(frr, config):
# pylint: disable=broad-exception-caught
try:
- tmp = get_frrender_dict(config)
- if frr.generate(tmp):
- # only apply a new FRR configuration if anything changed
- # in comparison to the previous applied configuration
- frr.apply()
+ with frr_render_lock():
+ tmp = get_frrender_dict(config)
+ if frr.generate(tmp):
+ # only apply a new FRR configuration if anything changed
+ # in comparison to the previous applied configuration
+ frr.apply()
except ConfigError as e:
logger.error(e)