CVE-2025-39999

Summary

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

blk-mq: fix blk_mq_tags double free while nr_requests grown

In the case user trigger tags grow by queue sysfs attribute nr_requests, hctx->sched_tags will be freed directly and replaced with a new allocated tags, see blk_mq_tag_update_depth().

The problem is that hctx->sched_tags is from elevator->et->tags, while et->tags is still the freed tags, hence later elevator exit will try to free the tags again, causing kernel panic.

Fix this problem by replacing et->tags with new allocated tags as well.

Noted there are still some long term problems that will require some refactor to be fixed thoroughly[1].

[1] https://lore.kernel.org/all/20250815080216.410665-1-yukuai1@huaweicloud.com/

Affected Software

VendorProductVersion RangeStatus
LinuxLinux58567d8e95c096ad234963df90a2ca518901f4b6 < 8faee580d63bc2a54a59dcdb7f9ce4de29384fecaffected
LinuxLinuxf5a6604f7a4405450e4a1f54e5430f47290c500f < 392b1d64911f4de8887fe8b68299fa8bd6e5b923affected
LinuxLinuxf5a6604f7a4405450e4a1f54e5430f47290c500f < ba28afbd9eff2a6370f23ef4e6a036ab0cfda409affected
LinuxLinux6.16.4 < 6.16.11affected
LinuxLinux6.17affected
LinuxLinux0 < 6.17unaffected
LinuxLinux6.16.11 <= 6.16.*unaffected
LinuxLinux6.17.1 <= 6.17.*unaffected
LinuxLinux6.18 <= *unaffected

Weaknesses

References