In the Linux kernel, the following vulnerability has been resolved:
drm/ttm: Fix a NULL pointer dereference
The LRU mechanism may look up a resource in the process of being removed from an object. The locking rules here are a bit unclear but it looks currently like res->bo assignment is protected by the LRU lock, whereas bo->resource is protected by the object lock, while clearing of bo->resource is also protected by the LRU lock. This means that if we check that bo->resource points to the LRU resource under the LRU lock we should be safe. So perform that check before deciding to swap out a bo. That avoids dereferencing a NULL bo->resource in ttmboswapout().
[
{
"digest": {
"function_hash": "140084496422162175422505187381239009412",
"length": 628.0
},
"target": {
"file": "drivers/gpu/drm/ttm/ttm_device.c",
"function": "ttm_device_swapout"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9d9b1f9f7a72d83ebf173534e76b246349f32374",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2023-53095-103fa7c4"
},
{
"digest": {
"function_hash": "140084496422162175422505187381239009412",
"length": 628.0
},
"target": {
"file": "drivers/gpu/drm/ttm/ttm_device.c",
"function": "ttm_device_swapout"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9a9a8fe26751334b7739193a94eba741073b8a55",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2023-53095-40d2ca9e"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"40577106796010479298761670804754430436",
"161237019893515947389530738644575445860",
"70159554559263439239529504643495287254",
"246276920374544185915809691918711962049"
]
},
"target": {
"file": "drivers/gpu/drm/ttm/ttm_device.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9a9a8fe26751334b7739193a94eba741073b8a55",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2023-53095-8fbb536a"
},
{
"digest": {
"function_hash": "140084496422162175422505187381239009412",
"length": 628.0
},
"target": {
"file": "drivers/gpu/drm/ttm/ttm_device.c",
"function": "ttm_device_swapout"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9ba1720f6c4a0f13c3f3cb5c28132ee75555d04f",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2023-53095-97c10d6d"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"40577106796010479298761670804754430436",
"161237019893515947389530738644575445860",
"70159554559263439239529504643495287254",
"246276920374544185915809691918711962049"
]
},
"target": {
"file": "drivers/gpu/drm/ttm/ttm_device.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9ba1720f6c4a0f13c3f3cb5c28132ee75555d04f",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2023-53095-a0875313"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"40577106796010479298761670804754430436",
"161237019893515947389530738644575445860",
"70159554559263439239529504643495287254",
"246276920374544185915809691918711962049"
]
},
"target": {
"file": "drivers/gpu/drm/ttm/ttm_device.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9d9b1f9f7a72d83ebf173534e76b246349f32374",
"signature_version": "v1",
"deprecated": false,
"id": "CVE-2023-53095-d2f07b6f"
}
]