GIVE YOUR AGENT THE EVIDENCE

Set up in your agent.

One prompt to get started. Paste it into your coding agent to connect cve.new through MCP and bring vulnerability context into your workflow.

Your agent needs remote MCP support and access to https://cve.new/mcp.

Read the setup guide

GIVE YOUR AGENT THE EVIDENCE

Investigate in your agent.

Turn this advisory into a focused investigation. Ask your agent to check your project’s versions, explain the evidence, and suggest a compatible fix.

Your agent needs remote MCP support and access to https://cve.new/mcp.

Read the setup guide

Check your stack
CVE-2026-99147unknown

drm/exec: don't immediately add prelocked obj to array of locked objs

Impact

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

Source excerpt · Linux

Affected packages

This source has no supported package-version data for matching. You can read the advisory here, but this record alone cannot power a dependency check.

Affected products

Vendor version evidence. Product records are separate from automatic dependency matching.

Linux · Linux

Other versions: unaffected

Version / rangeSource status
09593216bff15866f95c8ad406cb7fdcec1ee40a to before 96d9996e5dbcfabed052c0d9377a382c95fed607affected
09593216bff15866f95c8ad406cb7fdcec1ee40a to before 7a10cd79c4d9a90334fece32fef3a8e5b1a9727baffected
09593216bff15866f95c8ad406cb7fdcec1ee40a to before 26401a4999f1596a515b2e704e7066ac09306488affected
Linux version evidence

Linux · Linux

Other versions: affected

Version / rangeSource status
6.6affected
0 to before 6.6unaffected
6.18.59 through 6.18.* (inclusive)unaffected
7.2.13 through 7.2.* (inclusive)unaffected
7.3 through * (inclusive)unaffected
Linux version evidence

Original source description

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

drm/exec: don't immediately add prelocked obj to array of locked objs

When a contention is detected the drm_exec object grabs a reference to the contended object, unlocks all other objects and pre-locks the contended one before anything else.

The problem is that it is possible that this pre-locked object was about to be destroyed and drm_exec is now holding the last reference to it.

So we never actually see this pre-locked object again to be explicitly locked and so also never reserve a slot for a dma_fence object on it.

Should the driver now use drm_exec_for_each_locked_object() to add a new fence to all locked objects we eventually see a warning or even a BUG_ON() to prevent random memory corruption.

Fix this by keeping the prelocked object out of the array of locked objs until it was explicitly mentioned by the driver again.

If the prelocked object is never mentioned again by the driver just unlock and drop the reference at the end of the locking loop.

References