In the Linux kernel, the following vulnerability has been resolved:
drm/nouveau: don't attempt to schedule hpd_work on headless cards
If the card doesn't have display hardware, hpdwork and hpdlock are left uninitialized which causes BUG when attempting to schedule hpd_work on runtime PM resume.
Fix it by adding headless flag to DRM and skip any hpd if it's set.
[
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 196.0,
"function_hash": "240104661150421659427158590393161330111"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c",
"function": "nouveau_display_hpd_resume"
},
"id": "CVE-2024-40926-00b7d090"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"74784720985522147809105591520638350767",
"285397098785297404041283449576030833332",
"311133875263836210095376014416725943079",
"253793644543407323900410440515810689802"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv50/disp.c"
},
"id": "CVE-2024-40926-218336d5"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 196.0,
"function_hash": "240104661150421659427158590393161330111"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c",
"function": "nouveau_display_hpd_resume"
},
"id": "CVE-2024-40926-3ddc94b2"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"286406435712087904198594862784745973036",
"199669289020197131565428634621670425533",
"93056423855621014699319721570709752415",
"334522583168076114826824505963245674994"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv04/disp.c"
},
"id": "CVE-2024-40926-4b06d916"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 332.0,
"function_hash": "204971094956990667334821381993951925245"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv50/disp.c",
"function": "nv50_display_fini"
},
"id": "CVE-2024-40926-518867f0"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 560.0,
"function_hash": "42485168657300731534240522977594198072"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c",
"function": "nouveau_display_fini"
},
"id": "CVE-2024-40926-53198d3e"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"74784720985522147809105591520638350767",
"285397098785297404041283449576030833332",
"311133875263836210095376014416725943079",
"253793644543407323900410440515810689802"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv50/disp.c"
},
"id": "CVE-2024-40926-5df24400"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"46358341115871665263992888406944306510",
"200998274230405909895814768238468313228",
"257297353586544037297588581148024864467",
"113342067355473671849361477878158088711"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_drv.h"
},
"id": "CVE-2024-40926-6216fb57"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"286406435712087904198594862784745973036",
"199669289020197131565428634621670425533",
"93056423855621014699319721570709752415",
"334522583168076114826824505963245674994"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv04/disp.c"
},
"id": "CVE-2024-40926-85d065e8"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 857.0,
"function_hash": "211736515475440943606024832078878086673"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv04/disp.c",
"function": "nv04_display_fini"
},
"id": "CVE-2024-40926-adfe787b"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 332.0,
"function_hash": "204971094956990667334821381993951925245"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv50/disp.c",
"function": "nv50_display_fini"
},
"id": "CVE-2024-40926-ae076e80"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"302167523272894423742178683273177781071",
"68573451686711858497393006716743511727",
"176276959377108415574124263860188103658",
"70429632015581818484540697695761407580",
"193041871811542380068737031004785718836",
"209016691419001713429832788237681480384",
"187858762803055117941399307017976904149",
"18800200179422831152778123510195091081",
"107158379288350715791697910881821263473",
"180661606584320208971473888578304271254",
"117210870335884165996344931802577024686"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c"
},
"id": "CVE-2024-40926-b9ac2a03"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 2332.0,
"function_hash": "289492515703224186546207580189942713428"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c",
"function": "nouveau_display_create"
},
"id": "CVE-2024-40926-c4e875c2"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"302167523272894423742178683273177781071",
"68573451686711858497393006716743511727",
"176276959377108415574124263860188103658",
"70429632015581818484540697695761407580",
"193041871811542380068737031004785718836",
"209016691419001713429832788237681480384",
"187858762803055117941399307017976904149",
"18800200179422831152778123510195091081",
"107158379288350715791697910881821263473",
"180661606584320208971473888578304271254",
"117210870335884165996344931802577024686"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c"
},
"id": "CVE-2024-40926-c828d4e5"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 857.0,
"function_hash": "211736515475440943606024832078878086673"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/dispnv04/disp.c",
"function": "nv04_display_fini"
},
"id": "CVE-2024-40926-d08a9262"
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"line_hashes": [
"46358341115871665263992888406944306510",
"200998274230405909895814768238468313228",
"257297353586544037297588581148024864467",
"113342067355473671849361477878158088711"
],
"threshold": 0.9
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_drv.h"
},
"id": "CVE-2024-40926-d2b3765b"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 2332.0,
"function_hash": "289492515703224186546207580189942713428"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b96a225377b6602299a03d2ce3c289b68cd41bb7",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c",
"function": "nouveau_display_create"
},
"id": "CVE-2024-40926-df74c8fb"
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"length": 560.0,
"function_hash": "42485168657300731534240522977594198072"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@227349998e5740f14d531b0f0d704e66b1ed3c2f",
"target": {
"file": "drivers/gpu/drm/nouveau/nouveau_display.c",
"function": "nouveau_display_fini"
},
"id": "CVE-2024-40926-ec761785"
}
]