Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2022-50260— drm/msm: Make .remove and .shutdown HW shutdown consistent

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于drm/msm驱动程序的.remove和.shutdown回调函数中硬件关闭逻辑不一致,可能导致内核恐慌。

AI Predicted 5.9 Difficulty: Theoretical EPSS 0.16% · P4

Possible ATT&CK Techniques 1 AI

T1499 · Endpoint Denial of Service

Affected Version Matrix 16

VendorProduct Version RangeStatus
Linux Linux 9d5cbf5fe46e350715389d89d0c350d83289a102< 26f9a766f87b33c50ed400a9500cc1dc9aced953 affected
9d5cbf5fe46e350715389d89d0c350d83289a102< 0e6649a2e31ac157c711d583ec8f5ec59da5de0e affected
9d5cbf5fe46e350715389d89d0c350d83289a102< 0a58d2ae572adaec8d046f8d35b40c2c32ac7468 affected
3d516e369e3a563e7da39c72b06d78c7f1b09b1e affected
8bc5c9ba5a1d67aaf6957199b2ab8a24402741a9 affected
19583b280801b6ba4a36172113db42413860d1c4 affected
56ed34ea6cd73c2fd5384d03a9034e6f229a390a affected
4.14.197< 4.15 affected
… +8 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2022-50260

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
drm/msm: Make .remove and .shutdown HW shutdown consistent
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: drm/msm: Make .remove and .shutdown HW shutdown consistent Drivers' .remove and .shutdown callbacks are executed on different code paths. The former is called when a device is removed from the bus, while the latter is called at system shutdown time to quiesce the device. This means that some overlap exists between the two, because both have to take care of properly shutting down the hardware. But currently the logic used in these two callbacks isn't consistent in msm drivers, which could lead to kernel panic. For example, on .remove the component is deleted and its .unbind callback leads to the hardware being shutdown but only if the DRM device has been marked as registered. That check doesn't exist in the .shutdown logic and this can lead to the driver calling drm_atomic_helper_shutdown() for a DRM device that hasn't been properly initialized. A situation like this can happen if drivers for expected sub-devices fail to probe, since the .bind callback will never be executed. If that is the case, drm_atomic_helper_shutdown() will attempt to take mutexes that are only initialized if drm_mode_config_init() is called during a device bind. This bug was attempted to be fixed in commit 623f279c7781 ("drm/msm: fix shutdown hook in case GPU components failed to bind"), but unfortunately it still happens in some cases as the one mentioned above, i.e: systemd-shutdown[1]: Powering off. kvm: exiting hardware virtualization platform wifi-firmware.0: Removing from iommu group 12 platform video-firmware.0: Removing from iommu group 10 ------------[ cut here ]------------ WARNING: CPU: 6 PID: 1 at drivers/gpu/drm/drm_modeset_lock.c:317 drm_modeset_lock_all_ctx+0x3c4/0x3d0 ... Hardware name: Google CoachZ (rev3+) (DT) pstate: a0400009 (NzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : drm_modeset_lock_all_ctx+0x3c4/0x3d0 lr : drm_modeset_lock_all_ctx+0x48/0x3d0 sp : ffff80000805bb80 x29: ffff80000805bb80 x28: ffff327c00128000 x27: 0000000000000000 x26: 0000000000000000 x25: 0000000000000001 x24: ffffc95d820ec030 x23: ffff327c00bbd090 x22: ffffc95d8215eca0 x21: ffff327c039c5800 x20: ffff327c039c5988 x19: ffff80000805bbe8 x18: 0000000000000034 x17: 000000040044ffff x16: ffffc95d80cac920 x15: 0000000000000000 x14: 0000000000000315 x13: 0000000000000315 x12: 0000000000000000 x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000 x8 : ffff80000805bc28 x7 : 0000000000000000 x6 : 0000000000000000 x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000 x2 : ffff327c00128000 x1 : 0000000000000000 x0 : ffff327c039c59b0 Call trace: drm_modeset_lock_all_ctx+0x3c4/0x3d0 drm_atomic_helper_shutdown+0x70/0x134 msm_drv_shutdown+0x30/0x40 platform_shutdown+0x28/0x40 device_shutdown+0x148/0x350 kernel_power_off+0x38/0x80 __do_sys_reboot+0x288/0x2c0 __arm64_sys_reboot+0x28/0x34 invoke_syscall+0x48/0x114 el0_svc_common.constprop.0+0x44/0xec do_el0_svc+0x2c/0xc0 el0_svc+0x2c/0x84 el0t_64_sync_handler+0x11c/0x150 el0t_64_sync+0x18c/0x190 ---[ end trace 0000000000000000 ]--- Unable to handle kernel NULL pointer dereference at virtual address 0000000000000018 Mem abort info: ESR = 0x0000000096000004 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x04: level 0 translation fault Data abort info: ISV = 0, ISS = 0x00000004 CM = 0, WnR = 0 user pgtable: 4k pages, 48-bit VAs, pgdp=000000010eab1000 [0000000000000018] pgd=0000000000000000, p4d=0000000000000000 Internal error: Oops: 96000004 [#1] PREEMPT SMP ... Hardware name: Google CoachZ (rev3+) (DT) pstate: a0400009 (NzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : ww_mutex_lock+0x28/0x32c lr : drm_modeset_lock_all_ctx+0x1b0/0x3d0 sp : ffff80000805bb50 x29: ffff80000805bb50 x28: ffff327c00128000 x27: 0000000000000000 x26: 00000 ---truncated---
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于drm/msm驱动程序的.remove和.shutdown回调函数中硬件关闭逻辑不一致,可能导致内核恐慌。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux 9d5cbf5fe46e350715389d89d0c350d83289a102 ~ 26f9a766f87b33c50ed400a9500cc1dc9aced953 -
Linux Linux 5.9 -

II. Public POCs for CVE-2022-50260

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2022-50260

请登录查看更多情报信息。

Same Patch Batch · Linux · 2025-09-15 · 210 CVEs total

CVE-2022-50235 9.8 CRITICAL NFSD: Protect against send buffer overflow in NFSv2 READDIR
CVE-2022-50335 9.8 CRITICAL 9p: set req refcount to zero to avoid uninitialized usage
CVE-2023-53192 9.8 CRITICAL vxlan: Fix nexthop hash size
CVE-2023-53253 8.8 HIGH HID: nvidia-shield: Reference hid_device devm allocation of input_dev name
CVE-2023-53226 8.8 HIGH wifi: mwifiex: Fix OOB and integer underflow when rx packets
CVE-2022-50241 8.8 HIGH NFSD: fix use-after-free on source server when doing inter-server copy
CVE-2023-53194 8.4 HIGH fs/ntfs3: Add length check in indx_get_root
CVE-2023-53213 8.1 HIGH wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies()
CVE-2023-53186 8.1 HIGH skbuff: Fix a race between coalescing and releasing SKBs
CVE-2022-50303 7.8 HIGH drm/amdkfd: Fix double release compute pasid
CVE-2023-53254 7.8 HIGH cacheinfo: Fix shared_cpu_map to handle shared caches at different levels
CVE-2023-53170 7.8 HIGH net: dsa: Removed unneeded of_node_put in felix_parse_ports_node
CVE-2023-53252 7.8 HIGH Bluetooth: use RCU for hci_conn_params and iterate safely in hci_sync
CVE-2023-53176 7.8 HIGH serial: 8250: Reinit port->pm on port specific driver unbind
CVE-2023-53178 7.8 HIGH mm: fix zswap writeback race condition
CVE-2023-53179 7.8 HIGH netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c
CVE-2023-53184 7.8 HIGH arm64/sme: Set new vector length before reallocating
CVE-2022-50315 7.8 HIGH ata: ahci: Match EM_MAX_SLOTS with SATA_PMP_MAX_PORTS
CVE-2023-53189 7.8 HIGH ipv6/addrconf: fix a potential refcount underflow for idev
CVE-2023-53216 7.8 HIGH arm64: efi: Make efi_rt_lock a raw_spinlock

Showing top 20 of 210 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2022-50260

No comments yet


Leave a comment