In the Linux kernel, the following vulnerability has been resolved:
spi: sun6i: fix race between DMA RX transfer completion and RX FIFO drain
Previously the transfer complete IRQ immediately drained to RX FIFO to read any data remaining in FIFO to the RX buffer. This behaviour is correct when dealing with SPI in interrupt mode. However in DMA mode the transfer complete interrupt still fires as soon as all bytes to be transferred have been stored in the FIFO. At that point data in the FIFO still needs to be picked up by the DMA engine. Thus the drain procedure and DMA engine end up racing to read from RX FIFO, corrupting any data read. Additionally the RX buffer pointer is never adjusted according to DMA progress in DMA mode, thus calling the RX FIFO drain procedure in DMA mode is a bug. Fix corruptions in DMA RX mode by draining RX FIFO only in interrupt mode. Also wait for completion of RX DMA when in DMA mode before returning to ensure all data has been copied to the supplied memory buffer.
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 30, 2024 | Mar 2, 2024 |
| Suse | — | Upgrade kernel-default-optionalUpgrade kernel-symsUpgrade kernel-zfcpdumpUpgrade kernel-64kb-livepatch-develUpgrade kernel-default-livepatchUpgrade dtb-hisiliconUpgrade kernel-azure-optionalUpgrade kernel-default-develUpgrade kernel-develUpgrade reiserfs-kmp-defaultUpgrade dtb-xilinxUpgrade kernel-debug-develUpgrade gfs2-kmp-rtUpgrade kernel-rt-livepatch-develUpgrade dtb-socionextUpgrade kernel-debugUpgrade dtb-freescaleUpgrade kernel-debug-livepatch-develUpgrade kernel-sourceUpgrade kernel-syms-azureUpgrade kernel-syms-rtUpgrade ocfs2-kmp-64kbUpgrade dtb-amdUpgrade kernel-source-azureUpgrade dtb-marvellUpgrade kernel-kvmsmall-develUpgrade kernel-rt-livepatchUpgrade kernel-rt_debug-vdsoUpgrade kernel-default-vdsoUpgrade kernel-azure-livepatch-develUpgrade kernel-64kb-develUpgrade gfs2-kmp-64kbUpgrade dtb-broadcomUpgrade kernel-docs-htmlUpgrade kernel-rt_debugUpgrade kernel-azure-extraUpgrade kernel-devel-azureUpgrade dlm-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade kernel-obs-qaUpgrade cluster-md-kmp-rtUpgrade dtb-lgUpgrade cluster-md-kmp-defaultUpgrade kernel-devel-rtUpgrade kernel-64kb-optionalUpgrade dtb-renesasUpgrade kernel-64kbUpgrade dtb-appleUpgrade kselftests-kmp-64kbUpgrade kernel-kvmsmallUpgrade dtb-exynosUpgrade dtb-amlogicUpgrade dtb-apmUpgrade dtb-amazonUpgrade kernel-rt-develUpgrade ocfs2-kmp-rtUpgrade cluster-md-kmp-azureUpgrade dlm-kmp-azureUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-macrosUpgrade kernel-default-extraUpgrade dtb-mediatekUpgrade kernel-64kb-extraUpgrade dtb-nvidiaUpgrade kernel-azure-vdsoUpgrade kselftests-kmp-defaultUpgrade dtb-armUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-rockchipUpgrade gfs2-kmp-azureUpgrade reiserfs-kmp-64kbUpgrade dtb-alteraUpgrade kernel-docsUpgrade kernel-rt-optionalUpgrade kernel-rt-vdsoUpgrade kernel-source-vanillaUpgrade kernel-azureUpgrade kernel-source-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-livepatch-develUpgrade reiserfs-kmp-rtUpgrade reiserfs-kmp-azureUpgrade dtb-sprdUpgrade dtb-allwinnerUpgrade kselftests-kmp-rtUpgrade cluster-md-kmp-64kbUpgrade dtb-caviumUpgrade ocfs2-kmp-defaultUpgrade kernel-rt-extraUpgrade kernel-obs-buildUpgrade kernel-default-base-rebuildUpgrade kernel-default-baseUpgrade kernel-defaultUpgrade dlm-kmp-defaultUpgrade kernel-azure-develUpgrade kselftests-kmp-azureUpgrade kernel-debug-vdsoUpgrade dlm-kmp-rtUpgrade kernel-rtUpgrade gfs2-kmp-defaultUpgrade kernel-rt_debug-develUpgrade dtb-qcom | Apr 17, 2024 | Mar 2, 2024 |
| Ubuntu | — | Upgrade linux-aws-5.15Upgrade linux-nvidia-tegraUpgrade linux-ibm-5.15Upgrade linux-nvidia-6.5Upgrade linux-intel-iot-realtimeUpgrade linux-nvidia-tegra-5.15Upgrade linux-bluefieldUpgrade linux-nvidia-tegra-igxUpgrade linux-lowlatency-hwe-5.15Upgrade linuxUpgrade linux-awsUpgrade linux-ibmUpgrade linux-raspiUpgrade linux-gkeUpgrade linux-fipsUpgrade linux-gcpUpgrade linux-kvmUpgrade linux-xilinx-zynqmpUpgrade linux-azure-fdeUpgrade linux-realtimeUpgrade linux-oracle-5.15Upgrade linux-nvidiaUpgrade linux-aws-fipsUpgrade linux-gcp-5.15Upgrade linux-riscv-5.15Upgrade linux-lowlatencyUpgrade linux-azure-5.15Upgrade linux-intel-iotgUpgrade linux-gkeopUpgrade linux-gcp-fipsUpgrade linux-gkeop-5.15Upgrade linux-azureUpgrade linux-intel-iotg-5.15Upgrade linux-hwe-5.15Upgrade linux-oracle | Nov 19, 2024 | Mar 2, 2024 |
Prioritise with Active Threat Intelligence
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