Description
In the Linux kernel, the following vulnerability has been resolved:

media: airspy: Return queued buffers on start_streaming() failure

The vb2 framework hands buffers to the driver via buf_queue() before
calling start_streaming(). If start_streaming() returns an error
without first returning those buffers via vb2_buffer_done(),
vb2_start_streaming() fires WARN_ON(owned_by_drv_count) and the queued
buffers leak.

airspy_start_streaming() returned -ENODEV early when the USB device had
been disconnected (s->udev == NULL) without returning any buffers that
buf_queue() had already accepted. Take v4l2_lock first and jump to the
existing err_clear_bit label, which already drains s->queued_bufs via
vb2_buffer_done(..., VB2_BUF_STATE_QUEUED) before unlocking.

This mirrors the uvcvideo fix in commit 4cf3b6fd54eb ("media: uvcvideo:
Return queued buffers on start_streaming() failure").
Published: 2026-08-10
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability involves the Linux kernel media airspy driver; when start_streaming() fails, queued buffers are not returned to the user space, causing a memory leak in the kernel. The result is a loss of memory resources that can degrade system performance or lead to crashes, and the kernel emits a warning when the counter of buffers owned by the driver is non‑zero. This weakness is a classic memory-leak flaw. The likely attack surface is local; an attacker who can interact with the V4L2 airspy device (typically requiring user or root privileges) could trigger the failing start_streaming() call by disconnecting a USB device or otherwise forcing an error path, thereby exhausting kernel memory over time.

Affected Systems

Affected systems are Linux kernel deployments that include the airspy media driver. No specific kernel versions are enumerated in the data; the issue is operative in any kernel that contains the unpatched airspy code path.

Risk and Exploitability

The EPSS score is not available and the vulnerability is not listed in the CISA KEV catalog, suggesting low to moderate likelihood of exploitation. However, because the flaw can lead to kernel memory exhaustion, the severity can be high when exploited. Exploitation requires channeling an error in start_streaming(), which is generally limited to local users with access to the airspy device; thus privilege escalation could elevate the risk. The impact is primarily availability, with secondary confidentiality and integrity risks if repeated memory exhaustion leads to system instability.

Generated by OpenCVE AI on August 10, 2026 at 14:55 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to a Linux kernel version that contains the airspy driver fix (commit 877686a74ecdc93dcaee09dbac566e819059c9e7).
  • Apply the upstream patch that drains queued buffers on start_streaming() failure if using a custom or older kernel that does not contain the fix.
  • Monitor kernel logs for the WARN_ON(owned_by_drv_count) message; if seen, ensure the firmware or device driver is correctly handling USB disconnects or disable unused airspy devices to reduce exposure.

Generated by OpenCVE AI on August 10, 2026 at 14:55 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 10 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: media: airspy: Return queued buffers on start_streaming() failure The vb2 framework hands buffers to the driver via buf_queue() before calling start_streaming(). If start_streaming() returns an error without first returning those buffers via vb2_buffer_done(), vb2_start_streaming() fires WARN_ON(owned_by_drv_count) and the queued buffers leak. airspy_start_streaming() returned -ENODEV early when the USB device had been disconnected (s->udev == NULL) without returning any buffers that buf_queue() had already accepted. Take v4l2_lock first and jump to the existing err_clear_bit label, which already drains s->queued_bufs via vb2_buffer_done(..., VB2_BUF_STATE_QUEUED) before unlocking. This mirrors the uvcvideo fix in commit 4cf3b6fd54eb ("media: uvcvideo: Return queued buffers on start_streaming() failure").
Title media: airspy: Return queued buffers on start_streaming() failure
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-10T12:00:54.801Z

Reserved: 2026-07-30T09:28:09.376Z

Link: CVE-2026-68231

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-10T15:00:03Z

Weaknesses

No weakness.