CVE-2026-89741

CVE-2026-89741

High · published September 12, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
5.9
In the wild
Unconfirmed
What it is

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

Revert "media: v4l2-dev: fix error handling in __video_register_device()"

This reverts commit 2a934fdb01db6458288fc9386d3d8ceba6dd551a.

The intentions of that patch were good, but it doesn't work.

The idea is that if device_register fails, you have to do a put_device

to let the ref counter release resources.

However, the V4L2 API says that if video_register_device() fails, then

you have to call video_device_release(), which kfree()s the video_device

struct.

But the put_device() will already have freed the struct, so you end

up in a double-free scenario.

There is not really a good way of fixing this without breaking

video_register_device() into two parts, one that initializes everything,

and one that does the actual device_register, and then converting all

V4L2 drivers to this new model.

That is a massive job, and it is very unlikely that device_register

will fail.

So rather than ending up in a double-free scenario, just revert this

patch, and in that case we'll have a small memory leak. Which is a lot

more robust.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00169 · 5.9th percentile
Published
2026-09-12T00:20Z
References (8)
EPSS history
Timeline
  • 13 SEP 03:23Z
    EPSS moved — → 0%
    epss
  • 11 SEP 19:46Z
    Revert "media: v4l2-dev: fix error handling in __video_register_device()"
    cvelistv5