From cc6d9d2d2d736af87e5ddd5eceffe656e5f174bf Mon Sep 17 00:00:00 2001 From: Herbert Wolverson <herberticus@gmail.com> Date: Mon, 20 May 2024 08:42:03 -0500 Subject: [PATCH] Missing doc block --- src/rust/lqos_config/src/etc/mod.rs | 4 ++++ src/rust/lqosd/src/preflight_checks.rs | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/rust/lqos_config/src/etc/mod.rs b/src/rust/lqos_config/src/etc/mod.rs index 0cf29b26..6da6098d 100644 --- a/src/rust/lqos_config/src/etc/mod.rs +++ b/src/rust/lqos_config/src/etc/mod.rs @@ -50,6 +50,10 @@ pub fn load_config() -> Result<Config, LibreQoSConfigError> { Ok(lock.as_ref().unwrap().clone()) } +/// Helper function that disables the XDP bridge in the LIVE, CACHED +/// configuration --- it does NOT save the changes to disk. This is +/// intended for use when the XDP bridge is disabled by pre-flight +/// because of a Linux bridge. pub fn disable_xdp_bridge() -> Result<(), LibreQoSConfigError> { let mut config = load_config()?; let mut lock = CONFIG.lock().unwrap(); diff --git a/src/rust/lqosd/src/preflight_checks.rs b/src/rust/lqosd/src/preflight_checks.rs index c59436cc..75df89dd 100644 --- a/src/rust/lqosd/src/preflight_checks.rs +++ b/src/rust/lqosd/src/preflight_checks.rs @@ -117,7 +117,7 @@ fn check_bridge_status(config: &Config, interfaces: &[IpLinkInterface]) -> Resul if bridge.use_xdp_bridge { for bridge_if in interfaces .iter() - .filter(|bridge_if| bridge_if.link_type == "ether") + .filter(|bridge_if| bridge_if.link_type == "ether" && bridge_if.operstate == "UP") { // We found a bridge. Check member interfaces to check that it does NOT include any XDP // bridge members.