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

media: pwc: 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.

pwc's start_streaming() had two early returns that hit this trap:
-ENODEV when the USB device was already disconnected, and -ERESTARTSYS
when mutex_lock_interruptible() was interrupted by a signal. Call the
existing pwc_cleanup_queued_bufs() helper with VB2_BUF_STATE_QUEUED
before returning (matching the state already used by the
pwc_isoc_init() error path in the same function).

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

Impact

The Linux kernel media subsystem driver for USB Video Class devices contains a defect where the start_streaming() routine can return an error before returning any queued video buffers. When the driver fails to call vb2_buffer_done() for these buffers, a warning is triggered and the memory they occupy leaks into the kernel heap. This missing deallocation is classified as CWE‑772 and can gradually consume kernel memory, potentially leading to instability or crashes.

Affected Systems

The vulnerability affects the pwc driver within the Linux kernel media stack. No specific kernel version range is enumerated, but the resolution has been introduced in a series of commits that are incorporated into newer kernel releases. Administrators should confirm that their running kernel includes those commits; the relevant changes are documented in the kernel source changelog and the referenced commit series.

Risk and Exploitability

The CVSS score of 7.8 indicates high severity, while the EPSS score of less than 1 % reveals a very low probability of exploitation at this time. The vulnerability is not listed in the CISA KEV catalog. Based on the description, it is inferred that the attack vector requires local access to a USB video device and the ability to initiate a streaming session that triggers start_streaming(); remote exploitation without additional privileges is unlikely.

Generated by OpenCVE AI on August 14, 2026 at 03:20 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel patch that adds pwc_cleanup_queued_bufs to the start_streaming() path before returning on error, following the commit series cited in the advisory.
  • Upgrade to a kernel version that contains this patch, verifying the commit identifiers in the changelog or the vendor’s release notes.
  • If a kernel upgrade is unavailable, limit the use of the pwc driver by adjusting device‑file permissions or disabling the driver for untrusted users.

Generated by OpenCVE AI on August 14, 2026 at 03:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4745-1 linux-6.12 security update
History

Wed, 19 Aug 2026 16:45:00 +0000


Fri, 14 Aug 2026 02:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-775

Thu, 13 Aug 2026 22:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 3.3, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L'}

cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Wed, 12 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-772
References
Metrics threat_severity

None

cvssV3_1

{'score': 3.3, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L'}

threat_severity

Low


Mon, 10 Aug 2026 14:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-775

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: pwc: 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. pwc's start_streaming() had two early returns that hit this trap: -ENODEV when the USB device was already disconnected, and -ERESTARTSYS when mutex_lock_interruptible() was interrupted by a signal. Call the existing pwc_cleanup_queued_bufs() helper with VB2_BUF_STATE_QUEUED before returning (matching the state already used by the pwc_isoc_init() error path in the same function). This mirrors the uvcvideo fix in commit 4cf3b6fd54eb ("media: uvcvideo: Return queued buffers on start_streaming() failure").
Title media: pwc: 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-19T16:31:47.114Z

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

Link: CVE-2026-68216

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-10T13:20:09.527

Modified: 2026-08-19T17:20:37.670

Link: CVE-2026-68216

cve-icon Redhat

Severity : Low

Publid Date: 2026-08-10T12:00:35Z

Links: CVE-2026-68216 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-14T03:30:03Z

Weaknesses
  • CWE-772

    Missing Release of Resource after Effective Lifetime