In the Linux kernel, the following vulnerability has been resolved:
powerpc/code-patching: Fix KASAN hit by not flagging text patching area as VM_ALLOC
Erhard reported the following KASAN hit while booting his PowerMac G4 with a KASAN-enabled kernel 6.13-rc6:
BUG: KASAN: vmalloc-out-of-bounds in copy_to_kernel_nofault+0xd8/0x1c8 Write of size 8 at addr f1000000 by task chronyd/1293
CPU: 0 UID: 123 PID: 1293 Comm: chronyd Tainted: G W 6.13.0-rc6-PMacG4 #2 Tainted: [W]=WARN Hardware name: PowerMac3,6 7455 0x80010303 PowerMac Call Trace: [c2437590] [c1631a84] dump_stack_lvl+0x70/0x8c (unreliable) [c24375b0] [c0504998] print_report+0xdc/0x504 [c2437610] [c050475c] kasan_report+0xf8/0x108 [c2437690] [c0505a3c] kasan_check_range+0x24/0x18c [c24376a0] [c03fb5e4] copy_to_kernel_nofault+0xd8/0x1c8 [c24376c0] [c004c014] patch_instructions+0x15c/0x16c [c2437710] [c00731a8] bpf_arch_text_copy+0x60/0x7c [c2437730] [c0281168] bpf_jit_binary_pack_finalize+0x50/0xac [c2437750] [c0073cf4] bpf_int_jit_compile+0xb30/0xdec [c2437880] [c0280394] bpf_prog_select_runtime+0x15c/0x478 [c24378d0] [c1263428] bpf_prepare_filter+0xbf8/0xc14 [c2437990] [c12677ec] bpf_prog_create_from_user+0x258/0x2b4 [c24379d0] [c027111c] do_seccomp+0x3dc/0x1890 [c2437ac0] [c001d8e0] system_call_exception+0x2dc/0x420 [c2437f30] [c00281ac] ret_from_syscall+0x0/0x2c --- interrupt: c00 at 0x5a1274 NIP: 005a1274 LR: 006a3b3c CTR: 005296c8 REGS: c2437f40 TRAP: 0c00 Tainted: G W (6.13.0-rc6-PMacG4) MSR: 0200f932 <VEC,EE,PR,FP,ME,IR,DR,RI> CR: 24004422 XER: 00000000
GPR00: 00000166 af8f3fa0 a7ee3540 00000001 00000000 013b6500 005a5858 0200f932 GPR08: 00000000 00001fe9 013d5fc8 005296c8 2822244c 00b2fcd8 00000000 af8f4b57 GPR16: 00000000 00000001 00000000 00000000 00000000 00000001 00000000 00000002 GPR24: 00afdbb0 00000000 00000000 00000000 006e0004 013ce060 006e7c1c 00000001 NIP [005a1274] 0x5a1274 LR [006a3b3c] 0x6a3b3c --- interrupt: c00
The buggy address belongs to the virtual mapping at [f1000000, f1002000) created by: text_area_cpu_up+0x20/0x190
The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:00000000 index:0x0 pfn:0x76e30 flags: 0x80000000(zone=2) raw: 80000000 00000000 00000122 00000000 00000000 00000000 ffffffff 00000001 raw: 00000000 page dumped because: kasan: bad access detected
Memory state around the buggy address: f0ffff00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0ffff80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >f1000000: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ^ f1000080: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f1000100: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ==================================================================
f8 corresponds to KASAN_VMALLOC_INVALID which means the area is not initialised hence not supposed to be used yet.
Powerpc text patching infrastructure allocates a virtual memory area using get_vm_area() and flags it as VM_ALLOC. But that flag is meant to be used for vmalloc() and vmalloc() allocated memory is not supposed to be used before a call to __vmalloc_node_range() which is never called for that area.
That went undetected until commit e4137f08816b ("mm, kasan, kmsan: instrument copy_from/to_kernel_nofault")
The area allocated by text_area_cpu_up() is not vmalloc memory, it is mapped directly on demand when needed by map_kernel_page(). There is no VM flag corresponding to such usage, so just pass no flag. That way the area will be unpoisonned and usable immediately.
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 linuxUpgrade linux-6.1 | Apr 14, 2025 | Mar 12, 2025 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Mar 12, 2025 |
| Suse | — | Upgrade kernel-rt_debug-develUpgrade kselftests-kmp-64kbUpgrade dtb-broadcomUpgrade dtb-alteraUpgrade gfs2-kmp-64kbUpgrade ocfs2-kmp-defaultUpgrade kernel-kvmsmallUpgrade kernel-64kb-optionalUpgrade gfs2-kmp-rtUpgrade kernel-kvmsmall-develUpgrade kernel-default-optionalUpgrade kernel-default-vdsoUpgrade dtb-amazonUpgrade dtb-xilinxUpgrade kernel-docs-htmlUpgrade kernel-64kbUpgrade kernel-rtUpgrade kernel-rt-optionalUpgrade gfs2-kmp-azureUpgrade kernel-rt-vdsoUpgrade kernel-source-rtUpgrade dlm-kmp-64kbUpgrade kernel-kvmsmall-vdsoUpgrade kernel-azure-extraUpgrade kernel-debugUpgrade kernel-azureUpgrade kernel-default-base-rebuildUpgrade dtb-qcomUpgrade kernel-default-develUpgrade kernel-sourceUpgrade kernel-source-azureUpgrade kernel-syms-azureUpgrade reiserfs-kmp-64kbUpgrade kernel-debug-vdsoUpgrade kernel-obs-buildUpgrade kernel-develUpgrade dtb-lgUpgrade kernel-default-livepatchUpgrade gfs2-kmp-defaultUpgrade kernel-azure-optionalUpgrade dtb-allwinnerUpgrade dtb-hisiliconUpgrade cluster-md-kmp-rtUpgrade dtb-freescaleUpgrade kselftests-kmp-azureUpgrade kernel-zfcpdumpUpgrade ocfs2-kmp-64kbUpgrade kernel-devel-azureUpgrade cluster-md-kmp-azureUpgrade dtb-caviumUpgrade kernel-azure-develUpgrade ocfs2-kmp-azureUpgrade dtb-exynosUpgrade kernel-source-vanillaUpgrade dtb-rockchipUpgrade kernel-devel-rtUpgrade kernel-rt-livepatch-develUpgrade kernel-docsUpgrade ocfs2-kmp-rtUpgrade kernel-rt-extraUpgrade kernel-debug-develUpgrade dtb-socionextUpgrade kernel-default-baseUpgrade dtb-amdUpgrade dtb-nvidiaUpgrade kernel-rt_debug-vdsoUpgrade kernel-rt_debugUpgrade dtb-renesasUpgrade cluster-md-kmp-64kbUpgrade reiserfs-kmp-defaultUpgrade reiserfs-kmp-rtUpgrade kernel-defaultUpgrade kernel-64kb-develUpgrade dtb-sprdUpgrade dtb-apmUpgrade dtb-mediatekUpgrade dlm-kmp-rtUpgrade kernel-macrosUpgrade kernel-default-extraUpgrade kernel-obs-qaUpgrade kernel-azure-vdsoUpgrade kernel-default-livepatch-develUpgrade dlm-kmp-azureUpgrade dtb-marvellUpgrade dtb-amlogicUpgrade kernel-syms-rtUpgrade dtb-armUpgrade dtb-appleUpgrade kselftests-kmp-defaultUpgrade reiserfs-kmp-azureUpgrade kernel-rt-develUpgrade dlm-kmp-defaultUpgrade cluster-md-kmp-defaultUpgrade kselftests-kmp-rtUpgrade kernel-symsUpgrade kernel-64kb-extra | Dec 5, 2025 | Jun 12, 2025 |
| Ubuntu | — | Upgrade linux-image-6.11.0-1010-realtimeUpgrade linux-image-6.8.0-1034-azureUpgrade linux-image-5.15.0-1089-azureUpgrade linux-image-6.8.0-78-generic-64kUpgrade linux-image-raspi-6.8Upgrade linux-image-5.15.0-1078-nvidiaUpgrade linux-image-gcp-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-aws-64k-6.8Upgrade linux-image-aws-lts-20.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-realtimeUpgrade linux-image-6.8.0-1034-azure-fdeUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-virtual-6.8Upgrade linux-image-realtime-6.8.1Upgrade linux-image-nvidia-64kUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-oem-osp1Upgrade linux-image-5.15.0-1083-gcp-fipsUpgrade linux-image-gcp-fipsUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-6.8.0-1022-azure-nvidiaUpgrade linux-image-6.11.0-1014-lowlatency-64kUpgrade linux-image-azureUpgrade linux-image-5.15.0-1026-nvidia-tegra-igx-rtUpgrade linux-image-5.4.0-1146-aws-fipsUpgrade linux-image-5.15.0-1050-xilinx-zynqmpUpgrade linux-image-5.15.0-140-lowlatencyUpgrade linux-image-5.15.0-1084-aws-fipsUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.15.0-142-genericUpgrade linux-image-5.15.0-142-generic-64kUpgrade linux-image-gcpUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.1-1030-realtimeUpgrade linux-image-azure-nvidia-lts-24.04Upgrade linux-image-raspiUpgrade linux-image-oem-20.04cUpgrade linux-image-5.4.0-1151-azure-fipsUpgrade linux-image-5.15.0-1081-oracleUpgrade linux-image-5.15.0-140-fipsUpgrade linux-image-oracleUpgrade linux-image-5.4.0-1151-azureUpgrade linux-image-gcp-64kUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-gke-6.8Upgrade linux-image-kvmUpgrade linux-image-generic-6.8Upgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-6.8.0-1019-gkeopUpgrade linux-image-5.4.0-216-generic-lpaeUpgrade linux-image-oracle-64kUpgrade linux-image-raspi2Upgrade linux-image-6.8.0-2028-raspi-realtimeUpgrade linux-image-5.15.0-1066-gkeopUpgrade linux-image-azure-fipsUpgrade linux-image-5.15.0-1077-intel-iot-realtimeUpgrade linux-image-6.11.0-1013-raspiUpgrade linux-image-5.4.0-1051-iotUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-azure-cvmUpgrade linux-image-5.15.0-1079-intel-iotgUpgrade linux-image-5.15.0-140-generic-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-5.15.0-140-generic-lpaeUpgrade linux-image-oracle-6.8Upgrade linux-image-6.8.0-1035-nvidiaUpgrade linux-image-gkeop-5.15Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-78-genericUpgrade linux-image-5.15.0-1078-nvidia-lowlatencyUpgrade linux-image-5.4.0-1105-bluefieldUpgrade linux-image-5.15.0-1080-kvmUpgrade linux-image-5.4.0-1120-fipsUpgrade linux-image-ibm-classicUpgrade linux-image-6.11.0-1015-gcpUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-oem-22.04bUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-aws-lts-22.04Upgrade linux-image-generic-64k-6.8Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-5.15.0-140-genericUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-awsUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-oem-20.04dUpgrade linux-image-5.15.0-1076-ibmUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.11.0-1016-oracleUpgrade linux-image-6.8.0-1033-ibmUpgrade linux-image-6.8.0-1035-awsUpgrade linux-image-6.8.0-1036-gcpUpgrade linux-image-6.11.0-1016-oracle-64kUpgrade linux-image-ibm-6.8Upgrade linux-image-generic-hwe-18.04Upgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1035-nvidia-lowlatencyUpgrade linux-image-5.4.0-1064-xilinx-zynqmpUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-6.11.0-1015-gcp-64kUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-azure-nvidia-6.8Upgrade linux-image-6.11.0-26-genericUpgrade linux-image-5.4.0-1133-kvmUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-5.15.0-1084-realtimeUpgrade linux-image-5.15.0-1078-raspiUpgrade linux-image-fipsUpgrade linux-image-intelUpgrade linux-image-generic-lpaeUpgrade linux-image-bluefieldUpgrade linux-image-gke-5.15Upgrade linux-image-aws-fipsUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-nvidia-tegraUpgrade linux-image-intel-iotgUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.11.0-1014-lowlatencyUpgrade linux-image-lowlatencyUpgrade linux-image-generic-64kUpgrade linux-image-azure-fde-6.8Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-gkeopUpgrade linux-image-6.8.0-1036-gcp-64kUpgrade linux-image-6.8.0-1035-nvidia-64kUpgrade linux-image-6.8.0-1035-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-1026-nvidia-tegra-igxUpgrade linux-image-gkeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-oem-20.04bUpgrade linux-image-azure-lts-22.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-6.8.0-78-lowlatency-64kUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-azure-lts-20.04Upgrade linux-image-5.4.0-216-genericUpgrade linux-image-5.15.0-142-generic-lpaeUpgrade linux-image-oem-20.04Upgrade linux-image-5.15.0-1037-nvidia-tegraUpgrade linux-image-oem-22.04aUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oemUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.4.0-1149-gcpUpgrade linux-image-6.11.0-1022-oemUpgrade linux-image-6.11.0-1014-awsUpgrade linux-image-6.8.0-1035-raspiUpgrade linux-image-virtualUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-lowlatency-64kUpgrade linux-image-ibmUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-5.15.0-1081-gkeUpgrade linux-image-5.15.0-1089-azure-fipsUpgrade linux-image-5.4.0-1144-oracleUpgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-aws-6.8Upgrade linux-image-6.8.0-1035-aws-64kUpgrade linux-image-6.8.0-1032-oracle-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-6.8.0-1032-oracleUpgrade linux-image-5.4.0-1149-gcp-fipsUpgrade linux-image-5.15.0-140-lowlatency-64kUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.11.0-1015-azure-fdeUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-aws-64kUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.8.0-1032-gkeUpgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.4.0-216-lowlatencyUpgrade linux-image-5.4.0-1092-ibmUpgrade linux-image-5.15.0-1084-awsUpgrade linux-image-5.15.0-1083-gcpUpgrade linux-image-5.4.0-1146-awsUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-oem-24.04bUpgrade linux-image-oem-22.04Upgrade linux-image-5.15.0-1037-nvidia-tegra-rtUpgrade linux-image-6.11.0-26-generic-64kUpgrade linux-image-nvidiaUpgrade linux-image-6.11.0-1015-azureUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-6.8.0-78-lowlatencyUpgrade linux-image-generic | May 20, 2025 | Mar 12, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Sep 22, 2025 | Mar 12, 2025 |
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