In the Linux kernel, the following vulnerability has been resolved:
drm/nouveau: keep DMA buffers required for suspend/resume
Nouveau deallocates a few buffers post GPU init which are required for GPU suspend/resume to function correctly. This is likely not as big an issue on systems where the NVGPU is the only GPU, but on multi-GPU set ups it leads to a regression where the kernel module errors and results in a system-wide rendering freeze.
This commit addresses that regression by moving the two buffers required for suspend and resume to be deallocated at driver unload instead of post init.
[
{
"target": {
"file": "drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c"
},
"signature_version": "v1",
"digest": {
"line_hashes": [
"228243975126660180659852192416107342438",
"101026509665072491081734358455992247243",
"12102727151557936501008317395518822107",
"3661739790994443700797398996938649980",
"307553336649935355529009658866275547224",
"312607584056245762104970441549118143058",
"10546104526200265086860511152228757051",
"170273812892311142651156044104980834241"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f6ecfdad359a01c7fd8a3bcfde3ef0acdf107e6e",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2024-27411-2fa6dcfa"
},
{
"target": {
"function": "r535_gsp_dtor",
"file": "drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c"
},
"signature_version": "v1",
"digest": {
"length": 579.0,
"function_hash": "108188069644914908197259715105235918526"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@be00e15b240ed71fc30c0576af7ab670c8271661",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2024-27411-5ee2696f"
},
{
"target": {
"function": "r535_gsp_dtor",
"file": "drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c"
},
"signature_version": "v1",
"digest": {
"length": 579.0,
"function_hash": "108188069644914908197259715105235918526"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f6ecfdad359a01c7fd8a3bcfde3ef0acdf107e6e",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2024-27411-68f4783c"
},
{
"target": {
"function": "r535_gsp_postinit",
"file": "drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c"
},
"signature_version": "v1",
"digest": {
"length": 834.0,
"function_hash": "123168887863619716867698624057233190598"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@be00e15b240ed71fc30c0576af7ab670c8271661",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2024-27411-802d8f50"
},
{
"target": {
"file": "drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c"
},
"signature_version": "v1",
"digest": {
"line_hashes": [
"228243975126660180659852192416107342438",
"101026509665072491081734358455992247243",
"12102727151557936501008317395518822107",
"3661739790994443700797398996938649980",
"307553336649935355529009658866275547224",
"312607584056245762104970441549118143058",
"10546104526200265086860511152228757051",
"170273812892311142651156044104980834241"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@be00e15b240ed71fc30c0576af7ab670c8271661",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2024-27411-8b93f687"
},
{
"target": {
"function": "r535_gsp_postinit",
"file": "drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c"
},
"signature_version": "v1",
"digest": {
"length": 834.0,
"function_hash": "123168887863619716867698624057233190598"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f6ecfdad359a01c7fd8a3bcfde3ef0acdf107e6e",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2024-27411-fa2feca3"
}
]