CVE-2026-31573 (GCVE-0-2026-31573)
Vulnerability from cvelistv5
Published
2026-04-24 14:35
Modified
2026-10-30 12:24
Severity ?
VLAI Severity ?
EPSS score ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
media: verisilicon: Fix kernel panic due to __initconst misuse
Fix a kernel panic when probing the driver as a module:
Unable to handle kernel paging request at virtual address
ffffd9c18eb05000
of_find_matching_node_and_match+0x5c/0x1a0
hantro_probe+0x2f4/0x7d0 [hantro_vpu]
The imx8mq_vpu_shared_resources array is referenced by variant
structures through their shared_devices field. When built as a
module, __initconst causes this data to be freed after module
init, but it's later accessed during probe, causing a page fault.
The imx8mq_vpu_shared_resources is referenced from non-init code,
so keeping __initconst or __initconst_or_module here is wrong.
Drop the __initconst annotation and let it live in the normal .rodata
section.
A bug of __initconst called from regular non-init probe code
leading to bugs during probe deferrals or during unbind-bind cycles.
References
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| Linux | Linux |
Version: 42a9fbccb33a38c5a9e0a84680939da8eae4f60e Version: f2efc1e8ab65bdb9b892af132887323e4df92f02 Version: 5133ef7c893c2c3aee7dd12503dc480de9dbfbb5 Version: 286d629d10640bc22f3bf46aa4f356eb7975e862 Version: e0203ddf9af7c8e170e1e99ce83b4dc07f0cd765 Version: f988fbf0536b42f6a05ccc1ac709d60236ec1aa6 Version: 6.6.160 ≤ |
||
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/media/platform/verisilicon/imx8m_vpu_hw.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "53b88097bb0e0b895a691ae7da4a54b567c0d375",
"status": "affected",
"version": "42a9fbccb33a38c5a9e0a84680939da8eae4f60e",
"versionType": "git"
},
{
"lessThan": "5d177ff5eb235de9cc0b8e877466f5a3af6f573e",
"status": "affected",
"version": "f2efc1e8ab65bdb9b892af132887323e4df92f02",
"versionType": "git"
},
{
"lessThan": "07861e84b766c6db8014bc34138f3be4a62aad2a",
"status": "affected",
"version": "5133ef7c893c2c3aee7dd12503dc480de9dbfbb5",
"versionType": "git"
},
{
"lessThan": "1e7e9119cf9b0d8585b27653b1a6dc31397c252e",
"status": "affected",
"version": "286d629d10640bc22f3bf46aa4f356eb7975e862",
"versionType": "git"
},
{
"lessThan": "e8d97c270cb46a2a88739019d0f8547adc7d97da",
"status": "affected",
"version": "e0203ddf9af7c8e170e1e99ce83b4dc07f0cd765",
"versionType": "git"
},
{
"status": "affected",
"version": "f988fbf0536b42f6a05ccc1ac709d60236ec1aa6",
"versionType": "git"
},
{
"lessThan": "6.7",
"status": "affected",
"version": "6.6.160",
"versionType": "semver"
}
]
},
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/media/platform/verisilicon/imx8m_vpu_hw.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "6.19.11",
"status": "affected",
"version": "6.19.6",
"versionType": "semver"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.19.11",
"versionStartIncluding": "6.19.6",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.6.160",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: verisilicon: Fix kernel panic due to __initconst misuse\n\nFix a kernel panic when probing the driver as a module:\n\n Unable to handle kernel paging request at virtual address\n ffffd9c18eb05000\n of_find_matching_node_and_match+0x5c/0x1a0\n hantro_probe+0x2f4/0x7d0 [hantro_vpu]\n\nThe imx8mq_vpu_shared_resources array is referenced by variant\nstructures through their shared_devices field. When built as a\nmodule, __initconst causes this data to be freed after module\ninit, but it\u0027s later accessed during probe, causing a page fault.\n\nThe imx8mq_vpu_shared_resources is referenced from non-init code,\nso keeping __initconst or __initconst_or_module here is wrong.\n\nDrop the __initconst annotation and let it live in the normal .rodata\nsection.\n\nA bug of __initconst called from regular non-init probe code\nleading to bugs during probe deferrals or during unbind-bind cycles."
}
],
"providerMetadata": {
"dateUpdated": "2026-10-30T12:24:23.572Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/53b88097bb0e0b895a691ae7da4a54b567c0d375"
},
{
"url": "https://git.kernel.org/stable/c/5d177ff5eb235de9cc0b8e877466f5a3af6f573e"
},
{
"url": "https://git.kernel.org/stable/c/07861e84b766c6db8014bc34138f3be4a62aad2a"
},
{
"url": "https://git.kernel.org/stable/c/1e7e9119cf9b0d8585b27653b1a6dc31397c252e"
},
{
"url": "https://git.kernel.org/stable/c/e8d97c270cb46a2a88739019d0f8547adc7d97da"
}
],
"title": "media: verisilicon: Fix kernel panic due to __initconst misuse",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-31573",
"datePublished": "2026-04-24T14:35:51.421Z",
"dateReserved": "2026-03-09T15:48:24.119Z",
"dateUpdated": "2026-10-30T12:24:23.572Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…