Cloudanix VulnDB

CVE-2025-68175

None

CVSS

—

EPSS

0.2%

Published

Dec 16, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A flaw in the Linux kernel's handling of video capture hardware on certain NXP chips can make the system unstable when simple device queries run while video is actively streaming.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Low
Impact
Denial Of Service
Component
OS kernel
Class
Race Condition
Remediation
Patch
Effort
Medium
Patch risk
Low

What it actually does

Unconditional streaming cleanup in mxc_isi_video_release() allows non-streaming V4L2 operations to tear down active capture queues, violating vb2 state machine invariants and triggering warnings or faults in IRQ handlers.

Why it matters to the business

Embedded Linux systems using NXP i.MX8 ISI capture hardware may experience kernel warnings, video pipeline instability, or crashes during routine device queries or monitoring, increasing operational risk for media workloads until the kernel is updated.

How an attack unfolds

An attacker with local access to an affected device runs a streaming application (such as gstreamer) followed by a separate V4L2 control or capability query on the same node; this invokes the flawed release path, corrupting the active queue and surfacing as an IRQ handler warning.

How to fix it

Update the Linux kernel to the commit 029914306b93b37c6e7060793d2b6f76b935cfa6 or later; rebuild and deploy the fixed kernel image for all affected i.MX8 platforms. No configuration workaround exists.

How to confirm the fix worked

Confirm the running kernel contains commit 029914306b93b37c6e7060793d2b6f76b935cfa6; re-execute the gstreamer + v4l2-ctl reproduction sequence and verify absence of the mxc_isi_pipe_irq_handler warning.

Typical attack path

  1. Obtain local shell or process execution on target i.MX8-based system
  2. Start video capture stream via V4L2
  3. Issue concurrent non-streaming V4L2 ioctl (e.g., query controls) on same device node
  4. Trigger IRQ path that dereferences now-invalid streaming state
  5. Observe kernel warning or subsequent instability

How to detect it

Review kernel logs for the signature WARNING at drivers/media/platform/nxp/imx8-isi/imx8-isi-pipe.c combined with mxc_isi_pipe_irq_handler; correlate timestamps with V4L2 device access by unprivileged processes.

What your security team should do

  • Prioritize kernel upgrade on all i.MX8MP and similar ISI-equipped devices within the next maintenance window
  • Add the fixed commit hash to automated kernel version scanning policies
  • Monitor vendor stable-tree updates for backports to currently deployed LTS kernels

The record

In the Linux kernel, the following vulnerability has been resolved: media: nxp: imx8-isi: Fix streaming cleanup on release The current implementation unconditionally calls mxc_isi_video_cleanup_streaming() in mxc_isi_video_release(). This can lead to situations where any release call (like from a simple "v4l2-ctl -l") may release a currently streaming queue when called on such a device. This is reproducible on an i.MX8MP board by streaming from an ISI capture device using gstreamer: gst-launch-1.0 -v v4l2src device=/dev/videoX ! \ video/x-raw,format=GRAY8,width=1280,height=800,framerate=1/120 ! \ fakesink While this stream is running, querying the caps of the same device provokes the error state: v4l2-ctl -l -d /dev/videoX This results in the following trace: [ 155.452152] ------------[ cut here ]------------ [ 155.452163] WARNING: CPU: 0 PID: 1708 at drivers/media/platform/nxp/imx8-isi/imx8-isi-pipe.c:713 mxc_isi_pipe_irq_handler+0x19c/0x1b0 [imx8_isi] [ 157.004248] Modules linked in: cfg80211 rpmsg_ctrl rpmsg_char rpmsg_tty virtio_rpmsg_bus rpmsg_ns rpmsg_core rfkill nft_ct nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 nf_tables mcp251x6 [ 157.053499] CPU: 0 UID: 0 PID: 1708 Comm: python3 Not tainted 6.15.4-00114-g1f61ca5cad76 #1 PREEMPT [ 157.064369] Hardware name: imx8mp_board_01 (DT) [ 157.068205] pstate: 400000c5 (nZcv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 157.075169] pc : mxc_isi_pipe_irq_handler+0x19c/0x1b0 [imx8_isi] [ 157.081195] lr : mxc_isi_pipe_irq_handler+0x38/0x1b0 [imx8_isi] [ 157.087126] sp : ffff800080003ee0 [ 157.090438] x29: ffff800080003ee0 x28: ffff0000c3688000 x27: 0000000000000000 [ 157.097580] x26: 0000000000000000 x25: ffff0000c1e7ac00 x24: ffff800081b5ad50 [ 157.104723] x23: 00000000000000d1 x22: 0000000000000000 x21: ffff0000c25e4000 [ 157.111866] x20: 0000000060000200 x19: ffff80007a0608d0 x18: 0000000000000000 [ 157.119008] x17: ffff80006a4e3000 x16: ffff800080000000 x15: 0000000000000000 [ 157.126146] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000 [ 157.133287] x11: 0000000000000040 x10: ffff0000c01445f0 x9 : ffff80007a053a38 [ 157.140425] x8 : ffff0000c04004b8 x7 : 0000000000000000 x6 : 0000000000000000 [ 157.147567] x5 : ffff0000c0400490 x4 : ffff80006a4e3000 x3 : ffff0000c25e4000 [ 157.154706] x2 : 0000000000000000 x1 : ffff8000825c0014 x0 : 0000000060000200 [ 157.161850] Call trace: [ 157.164296] mxc_isi_pipe_irq_handler+0x19c/0x1b0 [imx8_isi] (P) [ 157.170319] __handle_irq_event_percpu+0x58/0x218 [ 157.175029] handle_irq_event+0x54/0xb8 [ 157.178867] handle_fasteoi_irq+0xac/0x248 [ 157.182968] handle_irq_desc+0x48/0x68 [ 157.186723] generic_handle_domain_irq+0x24/0x38 [ 157.191346] gic_handle_irq+0x54/0x120 [ 157.195098] call_on_irq_stack+0x24/0x30 [ 157.199027] do_interrupt_handler+0x88/0x98 [ 157.203212] el0_interrupt+0x44/0xc0 [ 157.206792] __el0_irq_handler_common+0x18/0x28 [ 157.211328] el0t_64_irq_handler+0x10/0x20 [ 157.215429] el0t_64_irq+0x198/0x1a0 [ 157.219009] ---[ end trace 0000000000000000 ]--- Address this issue by moving the streaming preparation and cleanup to the vb2 .prepare_streaming() and .unprepare_streaming() operations. This also simplifies the driver by allowing direct usage of the vb2_ioctl_streamon() and vb2_ioctl_streamoff() helpers, and removal of the manual cleanup from mxc_isi_video_release().

Affected packages

Ecosystem Package Introduced Fixed
Linux Kernel 0 6.17.8
Linux Kernel 6.4.0 6.17.8

Related vulnerabilities