CVE-2025-39999
Full vulnerability record from the local CVENow database.
Description
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/[email protected]/
View original CVE JSON
{
"id": "CVE-2025-39999",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2025-10-15T08:15:38.210",
"lastModified": "2026-10-19T21:10:00.160",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nblk-mq: fix blk_mq_tags double free while nr_requests grown\n\nIn the case user trigger tags grow by queue sysfs attribute nr_requests,\nhctx->sched_tags will be freed directly and replaced with a new\nallocated tags, see blk_mq_tag_update_depth().\n\nThe problem is that hctx->sched_tags is from elevator->et->tags, while\net->tags is still the freed tags, hence later elevator exit will try to\nfree the tags again, causing kernel panic.\n\nFix this problem by replacing et->tags with new allocated tags as well.\n\nNoted there are still some long term problems that will require some\nrefactor to be fixed thoroughly[1].\n\n[1] https://lore.kernel.org/all/[email protected]/"
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nblk-mq: corrección de la doble liberación de blk_mq_tags mientras nr_requests crecía\n\nEn el caso de que el usuario active el crecimiento de las etiquetas mediante el atributo sysfs de la cola nr_requests, hctx->sched_tags se liberará directamente y se reemplazará con nuevas etiquetas asignadas, véase blk_mq_tag_update_depth().\n\nEl problema es que hctx->sched_tags proviene de elevator->et->tags, mientras que et->tags sigue siendo las etiquetas liberadas, por lo tanto, una salida posterior del elevador intentará liberar las etiquetas de nuevo, causando un pánico del kernel.\n\nSoluciona este problema reemplazando et->tags también con nuevas etiquetas asignadas.\n\nSe ha observado que todavía existen algunos problemas a largo plazo que requerirán una refactorización para ser solucionados completamente[1].\n\n[1] https://lore.kernel.org/all/[email protected]/"
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"block/blk-mq-tag.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "58567d8e95c096ad234963df90a2ca518901f4b6",
"lessThan": "8faee580d63bc2a54a59dcdb7f9ce4de29384fec",
"versionType": "git",
"status": "affected"
},
{
"version": "f5a6604f7a4405450e4a1f54e5430f47290c500f",
"lessThan": "392b1d64911f4de8887fe8b68299fa8bd6e5b923",
"versionType": "git",
"status": "affected"
},
{
"version": "f5a6604f7a4405450e4a1f54e5430f47290c500f",
"lessThan": "ba28afbd9eff2a6370f23ef4e6a036ab0cfda409",
"versionType": "git",
"status": "affected"
},
{
"version": "6.16.4",
"lessThan": "6.16.11",
"versionType": "semver",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"block/blk-mq-tag.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "6.17",
"status": "affected"
},
{
"version": "0",
"lessThan": "6.17",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.16.11",
"lessThanOrEqual": "6.16.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.17.1",
"lessThanOrEqual": "6.17.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {},
"references": [
{
"url": "https://git.kernel.org/stable/c/392b1d64911f4de8887fe8b68299fa8bd6e5b923",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/8faee580d63bc2a54a59dcdb7f9ce4de29384fec",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ba28afbd9eff2a6370f23ef4e6a036ab0cfda409",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}