Skip to content

fix: bump OpenVINO to 2025.4.x to resolve LXC container detector crash#22856

Closed
abhilash1in wants to merge 1 commit intoblakeblackshear:devfrom
abhilash1in:fix/openvino-2025-4-lxc-crash
Closed

fix: bump OpenVINO to 2025.4.x to resolve LXC container detector crash#22856
abhilash1in wants to merge 1 commit intoblakeblackshear:devfrom
abhilash1in:fix/openvino-2025-4-lxc-crash

Conversation

@abhilash1in
Copy link
Copy Markdown

@abhilash1in abhilash1in commented Apr 13, 2026

Please read the contributing guidelines before submitting a PR.

Proposed change

Bumps the pinned OpenVINO version from 2025.3.* to 2025.4.* in docker/main/requirements-wheels.txt.

OpenVINO 2025.3.x crashes when Frigate runs natively in a Proxmox LXC container with partial CPU allocation (a common Proxmox deployment pattern). The crash manifests when any OpenVINO detector (CPU or GPU) is configured:

RuntimeError: Exception from src/plugins/intel_cpu/src/plugin.cpp:781: stoi

or:

RuntimeError: Exception from src/inference/src/dev/plugin.cpp:53: stoi

Root cause: In LXC containers, Proxmox allocates specific host CPU cores. The L3 cache sysfs file (/sys/devices/system/cpu/cpuN/cache/index3/shared_cpu_list) lists all CPUs in the physical socket (e.g., "0-11") even when most are offline. OpenVINO's lin_system_conf.cpp update_proc_map_info() iterates all CPUs in this list and calls std::stoi(system_info_table[offline_cpu][0]) where the string is empty for offline CPUs, throwing std::invalid_argument. The entire Frigate process then exits.

Upstream fix: OpenVINO 2025.4.0 added a null-check guard before the stoi call:

if (system_info_table[nproc][0].size() == 0) {
    return;
}

This fix was confirmed by reading the OpenVINO source at commit 44526285f24 (2025.3.0) vs the current tree.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New feature
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code
  • Documentation Update

Additional information

  • This PR fixes or closes issue:
  • This PR is related to issue:
  • Link to discussion with maintainers (required for large/pinned features):

AI disclosure

  • No AI tools were used in this PR.
  • AI tools were used in this PR. Details below:

AI tool(s) used: Claude (Anthropic)

How AI was used: Root cause analysis. Used GDB stack traces and OpenVINO source code analysis to identify the exact crash location and the upstream fix commit.

Extent of AI involvement: Identified the bug and the fix version. The actual change is a one-line version bump.

Human oversight: Reproduced on real hardware (Intel i5-11400, Proxmox 8.x, LXC with 4 vCPUs). Confirmed crash with 2025.3.0 and successful OpenVINO GPU detection after pip install openvino==2025.4.1. GDB was used to capture the C++ stack trace confirming the crash location.

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I can explain every line of code in this PR if asked.
  • UI changes including text have used i18n keys and have been added to the en locale.
  • The code has been formatted using Ruff (ruff format frigate)

@github-actions
Copy link
Copy Markdown

PR template validation failed

This PR was automatically closed because the description does not follow the pull request template.

Issues found:

  • Missing section: ## Proposed change
  • Missing section: ## Type of change
  • Missing section: ## AI disclosure
  • Missing section: ## Checklist
  • The Proposed change section is empty. Please describe what this PR does.

Please update your PR description to include all required sections from the template, then reopen this PR.

If you used an AI tool to generate this PR, please see our contributing guidelines for details.

@github-actions github-actions bot closed this Apr 13, 2026
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.

1 participant