In the Linux kernel, the following vulnerability has been resolved:
drm/fbdev-dma: Only set smem_start is enable per module option
Only export struct fb_info.fix.smem_start if that is required by the user and the memory does not come from vmalloc().
Setting struct fb_info.fix.smem_start breaks systems where DMA memory is backed by vmalloc address space. An example error is shown below.
[ 3.536043] ------------[ cut here ]------------ [ 3.540716] virt_to_phys used for non-linear address: 000000007fc4f540 (0xffff800086001000) [ 3.552628] WARNING: CPU: 4 PID: 61 at arch/arm64/mm/physaddr.c:12 __virt_to_phys+0x68/0x98 [ 3.565455] Modules linked in: [ 3.568525] CPU: 4 PID: 61 Comm: kworker/u12:5 Not tainted 6.6.23-06226-g4986cc3e1b75-dirty #250 [ 3.577310] Hardware name: NXP i.MX95 19X19 board (DT) [ 3.582452] Workqueue: events_unbound deferred_probe_work_func [ 3.588291] pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 3.595233] pc : __virt_to_phys+0x68/0x98 [ 3.599246] lr : __virt_to_phys+0x68/0x98 [ 3.603276] sp : ffff800083603990 [ 3.677939] Call trace: [ 3.680393] __virt_to_phys+0x68/0x98 [ 3.684067] drm_fbdev_dma_helper_fb_probe+0x138/0x238 [ 3.689214] __drm_fb_helper_initial_config_and_unlock+0x2b0/0x4c0 [ 3.695385] drm_fb_helper_initial_config+0x4c/0x68 [ 3.700264] drm_fbdev_dma_client_hotplug+0x8c/0xe0 [ 3.705161] drm_client_register+0x60/0xb0 [ 3.709269] drm_fbdev_dma_setup+0x94/0x148
Additionally, DMA memory is assumed to by contiguous in physical address space, which is not guaranteed by vmalloc().
Resolve this by checking the module flag drm_leak_fbdev_smem when DRM allocated the instance of struct fb_info. Fbdev-dma then only sets smem_start only if required (via FBINFO_HIDE_SMEM_START). Also guarantee that the framebuffer is not located in vmalloc address space.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 27, 2026 | Jul 27, 2026 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Dec 5, 2024 | Jul 29, 2024 |
| Suse | — | Upgrade dlm-kmp-64kbUpgrade dtb-nvidiaUpgrade kernel-debug-vdsoUpgrade kernel-source-rtUpgrade kselftests-kmp-azureUpgrade cluster-md-kmp-azureUpgrade cluster-md-kmp-defaultUpgrade kernel-rt-vdsoUpgrade kernel-kvmsmall-vdsoUpgrade kernel-kvmsmallUpgrade kernel-rtUpgrade kernel-syms-azureUpgrade kernel-rt_debug-vdsoUpgrade kernel-source-azureUpgrade kernel-azure-vdsoUpgrade reiserfs-kmp-azureUpgrade kernel-rt_debug-develUpgrade dtb-exynosUpgrade kernel-rt-extraUpgrade kernel-syms-rtUpgrade kernel-devel-azureUpgrade dtb-apmUpgrade kernel-azure-livepatch-develUpgrade dtb-qcomUpgrade kernel-obs-qaUpgrade dtb-broadcomUpgrade kernel-zfcpdumpUpgrade dtb-marvellUpgrade ocfs2-kmp-rtUpgrade dtb-amlogicUpgrade dlm-kmp-azureUpgrade kselftests-kmp-defaultUpgrade kernel-source-vanillaUpgrade kernel-default-extraUpgrade kernel-rt-livepatch-develUpgrade kernel-default-livepatchUpgrade kernel-rt_debugUpgrade kernel-rt-optionalUpgrade gfs2-kmp-rtUpgrade kernel-docs-htmlUpgrade kernel-sourceUpgrade kernel-macrosUpgrade ocfs2-kmp-64kbUpgrade dtb-rockchipUpgrade kernel-debug-livepatch-develUpgrade kernel-default-base-rebuildUpgrade reiserfs-kmp-64kbUpgrade kernel-kvmsmall-develUpgrade kselftests-kmp-64kbUpgrade dtb-lgUpgrade kernel-azureUpgrade kernel-azure-develUpgrade kernel-obs-buildUpgrade kernel-azure-extraUpgrade kernel-defaultUpgrade dtb-alteraUpgrade kernel-rt_debug-livepatch-develUpgrade dlm-kmp-defaultUpgrade kernel-default-vdsoUpgrade dtb-hisiliconUpgrade dtb-appleUpgrade cluster-md-kmp-64kbUpgrade kernel-docsUpgrade kernel-64kb-extraUpgrade cluster-md-kmp-rtUpgrade kernel-debug-develUpgrade dtb-armUpgrade dtb-amazonUpgrade dlm-kmp-rtUpgrade reiserfs-kmp-rtUpgrade kernel-devel-rtUpgrade kernel-default-optionalUpgrade kernel-64kbUpgrade dtb-amdUpgrade gfs2-kmp-64kbUpgrade dtb-xilinxUpgrade reiserfs-kmp-defaultUpgrade ocfs2-kmp-azureUpgrade kernel-debugUpgrade dtb-mediatekUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-renesasUpgrade dtb-socionextUpgrade dtb-allwinnerUpgrade kernel-symsUpgrade gfs2-kmp-azureUpgrade kernel-default-livepatch-develUpgrade kernel-64kb-livepatch-develUpgrade gfs2-kmp-defaultUpgrade kselftests-kmp-rtUpgrade dtb-sprdUpgrade kernel-64kb-develUpgrade dtb-freescaleUpgrade kernel-rt-develUpgrade kernel-azure-optionalUpgrade kernel-develUpgrade kernel-default-baseUpgrade dtb-caviumUpgrade ocfs2-kmp-defaultUpgrade kernel-64kb-optionalUpgrade kernel-default-devel | Dec 5, 2025 | Sep 10, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1016-gcpUpgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-raspiUpgrade linux-image-nvidiaUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oem-22.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-genericUpgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1013-gkeUpgrade linux-image-6.8.0-1016-azure-fdeUpgrade linux-image-oem-24.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1015-oracleUpgrade linux-image-6.8.0-1017-nvidia-lowlatencyUpgrade linux-image-gkeopUpgrade linux-image-gkeUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-generic-lpaeUpgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1017-gcpUpgrade linux-image-oracleUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1017-azure-fdeUpgrade linux-image-6.8.0-1017-nvidia-lowlatency-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-oem-22.04bUpgrade linux-image-kvmUpgrade linux-image-6.8.0-1014-ibmUpgrade linux-image-6.8.0-1017-azureUpgrade linux-image-6.8.0-1018-awsUpgrade linux-image-oracle-64kUpgrade linux-image-gkeop-6.8Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1016-oemUpgrade linux-image-ibmUpgrade linux-image-awsUpgrade linux-image-gcpUpgrade linux-image-azureUpgrade linux-image-6.8.0-1017-nvidia-64kUpgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-48-genericUpgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1014-raspiUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-48-lowlatencyUpgrade linux-image-6.8.0-48-generic-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1017-nvidiaUpgrade linux-image-6.8.0-1016-azureUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-nvidia-64kUpgrade linux-image-lowlatencyUpgrade linux-image-oem-22.04aUpgrade linux-image-6.8.0-1015-oracle-64kUpgrade linux-image-6.8.0-48-lowlatency-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatency-64k-hwe-24.04 | Nov 4, 2024 | Jul 29, 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