ghsa-f5pv-q555-4v9f
Vulnerability from github
In the Linux kernel, the following vulnerability has been resolved:
drm/gud: Fix UBSAN warning
UBSAN complains about invalid value for bool:
[ 101.165172] [drm] Initialized gud 1.0.0 20200422 for 2-3.2:1.0 on minor 1 [ 101.213360] gud 2-3.2:1.0: [drm] fb1: guddrmfb frame buffer device [ 101.213426] usbcore: registered new interface driver gud [ 101.989431] ================================================================================ [ 101.989441] UBSAN: invalid-load in linux/include/linux/iosys-map.h:253:9 [ 101.989447] load of value 121 is not a valid value for type '_Bool' [ 101.989451] CPU: 1 PID: 455 Comm: kworker/1:6 Not tainted 5.18.0-rc5-gud-5.18-rc5 #3 [ 101.989456] Hardware name: Hewlett-Packard HP EliteBook 820 G1/1991, BIOS L71 Ver. 01.44 04/12/2018 [ 101.989459] Workqueue: events_long gud_flush_work [gud] [ 101.989471] Call Trace: [ 101.989474] [ 101.989479] dump_stack_lvl+0x49/0x5f [ 101.989488] dump_stack+0x10/0x12 [ 101.989493] ubsan_epilogue+0x9/0x3b [ 101.989498] __ubsan_handle_load_invalid_value.cold+0x44/0x49 [ 101.989504] dma_buf_vmap.cold+0x38/0x3d [ 101.989511] ? find_busiest_group+0x48/0x300 [ 101.989520] drm_gem_shmem_vmap+0x76/0x1b0 [drm_shmem_helper] [ 101.989528] drm_gem_shmem_object_vmap+0x9/0xb [drm_shmem_helper] [ 101.989535] drm_gem_vmap+0x26/0x60 [drm] [ 101.989594] drm_gem_fb_vmap+0x47/0x150 [drm_kms_helper] [ 101.989630] gud_prep_flush+0xc1/0x710 [gud] [ 101.989639] ? _raw_spin_lock+0x17/0x40 [ 101.989648] gud_flush_work+0x1e0/0x430 [gud] [ 101.989653] ? __switch_to+0x11d/0x470 [ 101.989664] process_one_work+0x21f/0x3f0 [ 101.989673] worker_thread+0x200/0x3e0 [ 101.989679] ? rescuer_thread+0x390/0x390 [ 101.989684] kthread+0xfd/0x130 [ 101.989690] ? kthread_complete_and_exit+0x20/0x20 [ 101.989696] ret_from_fork+0x22/0x30 [ 101.989706] [ 101.989708] ================================================================================
The source of this warning is in iosys_map_clear() called from dma_buf_vmap(). It conditionally sets values based on map->is_iomem. The iosys_map variables are allocated uninitialized on the stack leading to ->is_iomem having all kinds of values and not only 0/1.
Fix this by zeroing the iosys_map variables.
{
"affected": [],
"aliases": [
"CVE-2022-50628"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2025-12-08T02:15:48Z",
"severity": null
},
"details": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/gud: Fix UBSAN warning\n\nUBSAN complains about invalid value for bool:\n\n[ 101.165172] [drm] Initialized gud 1.0.0 20200422 for 2-3.2:1.0 on minor 1\n[ 101.213360] gud 2-3.2:1.0: [drm] fb1: guddrmfb frame buffer device\n[ 101.213426] usbcore: registered new interface driver gud\n[ 101.989431] ================================================================================\n[ 101.989441] UBSAN: invalid-load in linux/include/linux/iosys-map.h:253:9\n[ 101.989447] load of value 121 is not a valid value for type \u0027_Bool\u0027\n[ 101.989451] CPU: 1 PID: 455 Comm: kworker/1:6 Not tainted 5.18.0-rc5-gud-5.18-rc5 #3\n[ 101.989456] Hardware name: Hewlett-Packard HP EliteBook 820 G1/1991, BIOS L71 Ver. 01.44 04/12/2018\n[ 101.989459] Workqueue: events_long gud_flush_work [gud]\n[ 101.989471] Call Trace:\n[ 101.989474] \u003cTASK\u003e\n[ 101.989479] dump_stack_lvl+0x49/0x5f\n[ 101.989488] dump_stack+0x10/0x12\n[ 101.989493] ubsan_epilogue+0x9/0x3b\n[ 101.989498] __ubsan_handle_load_invalid_value.cold+0x44/0x49\n[ 101.989504] dma_buf_vmap.cold+0x38/0x3d\n[ 101.989511] ? find_busiest_group+0x48/0x300\n[ 101.989520] drm_gem_shmem_vmap+0x76/0x1b0 [drm_shmem_helper]\n[ 101.989528] drm_gem_shmem_object_vmap+0x9/0xb [drm_shmem_helper]\n[ 101.989535] drm_gem_vmap+0x26/0x60 [drm]\n[ 101.989594] drm_gem_fb_vmap+0x47/0x150 [drm_kms_helper]\n[ 101.989630] gud_prep_flush+0xc1/0x710 [gud]\n[ 101.989639] ? _raw_spin_lock+0x17/0x40\n[ 101.989648] gud_flush_work+0x1e0/0x430 [gud]\n[ 101.989653] ? __switch_to+0x11d/0x470\n[ 101.989664] process_one_work+0x21f/0x3f0\n[ 101.989673] worker_thread+0x200/0x3e0\n[ 101.989679] ? rescuer_thread+0x390/0x390\n[ 101.989684] kthread+0xfd/0x130\n[ 101.989690] ? kthread_complete_and_exit+0x20/0x20\n[ 101.989696] ret_from_fork+0x22/0x30\n[ 101.989706] \u003c/TASK\u003e\n[ 101.989708] ================================================================================\n\nThe source of this warning is in iosys_map_clear() called from\ndma_buf_vmap(). It conditionally sets values based on map-\u003eis_iomem. The\niosys_map variables are allocated uninitialized on the stack leading to\n-\u003eis_iomem having all kinds of values and not only 0/1.\n\nFix this by zeroing the iosys_map variables.",
"id": "GHSA-f5pv-q555-4v9f",
"modified": "2025-12-08T03:31:03Z",
"published": "2025-12-08T03:31:03Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-50628"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/832f861a46039d50536dcfda0a9fb334b48d0f8b"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/951df98024f7272f85df5044eca7374f5b5b24ef"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/e1078b270d218f8d58efb4d78ea25a4d16ba3490"
}
],
"schema_version": "1.4.0",
"severity": []
}
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.