In the Linux kernel, the following vulnerability has been resolved:
usb: typec: tcpm: Correct the PDO counting in pd_set
Off-by-one errors happen because nr_snk_pdo and nr_src_pdo are incorrectly added one. The index of the loop is equal to the number of PDOs to be updated when leaving the loop and it doesn't need to be added one.
When doing the power negotiation, TCPM relies on the "nr_snk_pdo" as the size of the local sink PDO array to match the Source capabilities of the partner port. If the off-by-one overflow occurs, a wrong RDO might be sent and unexpected power transfer might happen such as over voltage or over current (than expected).
"nr_src_pdo" is used to set the Rp level when the port is in Source role. It is also the array size of the local Source capabilities when filling up the buffer which will be sent as the Source PDOs (such as in Power Negotiation). If the off-by-one overflow occurs, a wrong Rp level might be set and wrong Source PDOs will be sent to the partner port. This could potentially cause over current or port resets.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 27, 2026 | Jul 27, 2026 |
| Suse | — | Upgrade dtb-renesasUpgrade kernel-64kb-develUpgrade kselftests-kmp-64kbUpgrade kernel-azure-extraUpgrade kernel-source-azureUpgrade reiserfs-kmp-rtUpgrade kernel-rt-develUpgrade dtb-mediatekUpgrade kernel-kvmsmall-livepatch-develUpgrade dlm-kmp-azureUpgrade kernel-64kbUpgrade dtb-armUpgrade ocfs2-kmp-azureUpgrade dtb-amazonUpgrade kernel-develUpgrade kernel-debug-develUpgrade kernel-macrosUpgrade reiserfs-kmp-defaultUpgrade dtb-apmUpgrade dtb-freescaleUpgrade cluster-md-kmp-defaultUpgrade kernel-64kb-livepatch-develUpgrade kernel-obs-qaUpgrade dtb-exynosUpgrade kernel-rt_debugUpgrade dtb-lgUpgrade gfs2-kmp-64kbUpgrade kselftests-kmp-defaultUpgrade kernel-devel-rtUpgrade kernel-symsUpgrade kernel-zfcpdumpUpgrade kernel-rt_debug-vdsoUpgrade kernel-default-optionalUpgrade kernel-kvmsmall-develUpgrade dtb-amdUpgrade dtb-appleUpgrade dtb-marvellUpgrade dtb-amlogicUpgrade cluster-md-kmp-azureUpgrade gfs2-kmp-rtUpgrade kernel-default-extraUpgrade kernel-64kb-optionalUpgrade kernel-devel-azureUpgrade dlm-kmp-64kbUpgrade kernel-kvmsmallUpgrade kernel-debugUpgrade ocfs2-kmp-rtUpgrade kernel-default-livepatch-develUpgrade dtb-socionextUpgrade dtb-xilinxUpgrade kernel-debug-livepatch-develUpgrade cluster-md-kmp-rtUpgrade kernel-sourceUpgrade kernel-default-livepatchUpgrade dtb-hisiliconUpgrade kernel-default-develUpgrade kernel-rt-livepatch-develUpgrade kernel-azure-vdsoUpgrade dtb-qcomUpgrade kernel-rt-vdsoUpgrade kernel-rt-extraUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-vdsoUpgrade reiserfs-kmp-azureUpgrade dtb-nvidiaUpgrade dtb-alteraUpgrade cluster-md-kmp-64kbUpgrade kernel-rtUpgrade gfs2-kmp-azureUpgrade kselftests-kmp-azureUpgrade kernel-64kb-extraUpgrade dlm-kmp-defaultUpgrade kernel-default-baseUpgrade kernel-syms-azureUpgrade kernel-source-rtUpgrade kernel-obs-buildUpgrade ocfs2-kmp-64kbUpgrade kernel-azure-optionalUpgrade kernel-syms-rtUpgrade dtb-broadcomUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-defaultUpgrade kselftests-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade kernel-docs-htmlUpgrade gfs2-kmp-defaultUpgrade kernel-debug-vdsoUpgrade kernel-azure-develUpgrade kernel-azureUpgrade kernel-source-vanillaUpgrade kernel-rt_debug-develUpgrade kernel-default-base-rebuildUpgrade dtb-allwinnerUpgrade dlm-kmp-rtUpgrade dtb-sprdUpgrade dtb-rockchipUpgrade dtb-caviumUpgrade kernel-azure-livepatch-develUpgrade kernel-docsUpgrade kernel-rt-optionalUpgrade reiserfs-kmp-64kb | Jun 24, 2024 | May 1, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1009-nvidiaUpgrade linux-image-6.8.0-38-generic-64kUpgrade linux-image-oracleUpgrade linux-image-6.8.0-1010-azure-fdeUpgrade linux-image-virtualUpgrade linux-image-kvmUpgrade linux-image-6.8.0-1011-awsUpgrade linux-image-6.8.0-1007-raspiUpgrade linux-image-6.8.0-1008-ibmUpgrade linux-image-generic-lpaeUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1006-gkeUpgrade linux-image-6.8.0-38-lowlatencyUpgrade linux-image-6.8.0-38-lowlatency-64kUpgrade linux-image-azure-fdeUpgrade linux-image-awsUpgrade linux-image-6.8.0-1008-oemUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1007-intelUpgrade linux-image-lowlatencyUpgrade linux-image-lowlatency-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1008-oracle-64kUpgrade linux-image-raspiUpgrade linux-image-generic-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-1008-oracleUpgrade linux-image-oem-24.04Upgrade linux-image-nvidiaUpgrade linux-image-6.8.0-1009-nvidia-64kUpgrade linux-image-6.8.0-38-genericUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-intelUpgrade linux-image-oracle-64kUpgrade linux-image-genericUpgrade linux-image-gkeUpgrade linux-image-nvidia-64kUpgrade linux-image-gcpUpgrade linux-image-azureUpgrade linux-image-6.8.0-1010-gcpUpgrade linux-image-6.8.0-1010-azureUpgrade linux-image-ibm | Jul 12, 2024 | May 1, 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