In the Linux kernel, the following vulnerability has been resolved:
soc: qcom: pmic_glink: Fix race during initialization
As pointed out by Stephen Boyd it is possible that during initialization of the pmic_glink child drivers, the protection-domain notifiers fires, and the associated work is scheduled, before the client registration returns and as a result the local "client" pointer has been initialized.
The outcome of this is a NULL pointer dereference as the "client" pointer is blindly dereferenced.
Timeline provided by Stephen: CPU0 CPU1 ---- ---- ucsi->client = NULL; devm_pmic_glink_register_client() client->pdr_notify(client->priv, pg->client_state) pmic_glink_ucsi_pdr_notify() schedule_work(&ucsi->register_work) <schedule away> pmic_glink_ucsi_register() ucsi_register() pmic_glink_ucsi_read_version() pmic_glink_ucsi_read() pmic_glink_ucsi_read() pmic_glink_send(ucsi->client) <client is NULL BAD> ucsi->client = client // Too late!
This code is identical across the altmode, battery manager and usci child drivers.
Resolve this by splitting the allocation of the "client" object and the registration thereof into two operations.
This only happens if the protection domain registry is populated at the time of registration, which by the introduction of commit '1ebcde047c54 ("soc: qcom: add pd-mapper implementation")' became much more likely.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 27, 2026 | Jul 27, 2026 |
| Suse | — | Upgrade kselftests-kmp-rtUpgrade dlm-kmp-azureUpgrade kernel-64kbUpgrade kernel-azure-livepatch-develUpgrade kernel-defaultUpgrade kernel-kvmsmallUpgrade kernel-debug-vdsoUpgrade kselftests-kmp-defaultUpgrade ocfs2-kmp-64kbUpgrade kernel-rt_debug-vdsoUpgrade dtb-socionextUpgrade gfs2-kmp-rtUpgrade kernel-debug-livepatch-develUpgrade kernel-default-develUpgrade kernel-kvmsmall-develUpgrade kernel-rt_debugUpgrade kernel-syms-rtUpgrade kernel-default-livepatchUpgrade kernel-syms-azureUpgrade kernel-devel-azureUpgrade dtb-freescaleUpgrade kernel-rt-extraUpgrade dtb-amazonUpgrade kernel-rt-optionalUpgrade ocfs2-kmp-rtUpgrade kernel-macrosUpgrade cluster-md-kmp-defaultUpgrade dtb-amlogicUpgrade reiserfs-kmp-64kbUpgrade kernel-azure-extraUpgrade kernel-default-extraUpgrade kernel-default-baseUpgrade dtb-marvellUpgrade kernel-rtUpgrade kernel-obs-qaUpgrade dlm-kmp-defaultUpgrade dtb-amdUpgrade reiserfs-kmp-rtUpgrade kernel-azure-develUpgrade kernel-docs-htmlUpgrade kernel-kvmsmall-livepatch-develUpgrade kselftests-kmp-azureUpgrade dtb-broadcomUpgrade kernel-docsUpgrade dtb-appleUpgrade kernel-rt-vdsoUpgrade kernel-source-rtUpgrade kernel-zfcpdumpUpgrade kernel-azure-vdsoUpgrade kernel-obs-buildUpgrade kernel-kvmsmall-vdsoUpgrade dtb-apmUpgrade kernel-rt-livepatch-develUpgrade kernel-64kb-extraUpgrade reiserfs-kmp-defaultUpgrade dtb-alteraUpgrade kernel-azure-optionalUpgrade kernel-source-vanillaUpgrade dtb-qcomUpgrade dlm-kmp-64kbUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-default-livepatch-develUpgrade dtb-lgUpgrade cluster-md-kmp-rtUpgrade cluster-md-kmp-64kbUpgrade kernel-devel-rtUpgrade kernel-debugUpgrade ocfs2-kmp-azureUpgrade kernel-symsUpgrade kernel-rt_debug-develUpgrade dtb-rockchipUpgrade cluster-md-kmp-azureUpgrade reiserfs-kmp-azureUpgrade kernel-64kb-develUpgrade dtb-caviumUpgrade dtb-sprdUpgrade kernel-default-base-rebuildUpgrade kernel-azureUpgrade dtb-xilinxUpgrade dtb-mediatekUpgrade gfs2-kmp-64kbUpgrade dtb-allwinnerUpgrade kernel-rt-develUpgrade dtb-nvidiaUpgrade kernel-source-azureUpgrade dtb-armUpgrade kselftests-kmp-64kbUpgrade kernel-develUpgrade kernel-64kb-livepatch-develUpgrade dtb-exynosUpgrade gfs2-kmp-defaultUpgrade kernel-64kb-optionalUpgrade dtb-hisiliconUpgrade kernel-default-vdsoUpgrade kernel-default-optionalUpgrade gfs2-kmp-azureUpgrade dtb-renesasUpgrade dlm-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade kernel-sourceUpgrade kernel-debug-devel | Dec 5, 2025 | Oct 8, 2024 |
| Ubuntu | — | Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-50-lowlatencyUpgrade linux-image-virtualUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-oem-22.04bUpgrade linux-image-gcpUpgrade linux-image-oem-22.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-1020-azureUpgrade linux-image-6.8.0-1018-oemUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-24.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-ibm-classicUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-oracleUpgrade linux-image-6.8.0-1019-gcpUpgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1020-awsUpgrade linux-image-awsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-gkeUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oracle-64kUpgrade linux-image-azure-fdeUpgrade linux-image-oem-22.04cUpgrade linux-image-nvidiaUpgrade linux-image-6.8.0-1017-oracle-64kUpgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-50-generic-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-50-lowlatency-64kUpgrade linux-image-6.8.0-1019-nvidia-64kUpgrade linux-image-6.8.0-1017-oracleUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oem-22.04dUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-50-genericUpgrade linux-image-6.8.0-1019-nvidia-lowlatencyUpgrade linux-image-6.8.0-1016-raspiUpgrade linux-image-genericUpgrade linux-image-kvmUpgrade linux-image-raspiUpgrade linux-image-6.8.0-1017-ibmUpgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1015-gkeUpgrade linux-image-generic-64kUpgrade linux-image-gkeopUpgrade linux-image-6.8.0-1020-azure-fdeUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-ibmUpgrade linux-image-azureUpgrade linux-image-6.8.0-1019-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1019-nvidiaUpgrade linux-image-virtual-hwe-22.04 | Dec 13, 2024 | Sep 13, 2024 |
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub