In the Linux kernel, the following vulnerability has been resolved:
perf: Fix event leak upon exec and file release
The perf pending task work is never waited upon the matching event release. In the case of a child event, released via free_event() directly, this can potentially result in a leaked event, such as in the following scenario that doesn't even require a weak IRQ work implementation to trigger:
schedule() prepare_task_switch() =======> <NMI> perf_event_overflow() event->pending_sigtrap = ... irq_work_queue(&event->pending_irq) <======= </NMI> perf_event_task_sched_out() event_sched_out() event->pending_sigtrap = 0; atomic_long_inc_not_zero(&event->refcount) task_work_add(&event->pending_task) finish_lock_switch() =======> <IRQ> perf_pending_irq() //do nothing, rely on pending task work <======= </IRQ>
begin_new_exec() perf_event_exit_task() perf_event_exit_event() // If is child event free_event() WARN(atomic_long_cmpxchg(&event->refcount, 1, 0) != 1) // event is leaked
Similar scenarios can also happen with perf_event_remove_on_exec() or simply against concurrent perf_event_release().
Fix this with synchonizing against the possibly remaining pending task work while freeing the event, just like is done with remaining pending IRQ work. This means that the pending task callback neither need nor should hold a reference to the event, preventing it from ever beeing freed.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-develUpgrade kernelUpgrade perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade perfUpgrade bpftool-debuginfoUpgrade kernel-headersUpgrade python-perfUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade python-perf-debuginfoUpgrade kernel-toolsUpgrade bpftoolUpgrade kernel-livepatch-5.15.165-110.161 | Sep 16, 2024 | Aug 21, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-toolsUpgrade kernel-modules-extra-commonUpgrade kernel-libbpf-staticUpgrade bpftoolUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-6.1.106-116.188Upgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-debuginfoUpgrade perf-debuginfoUpgrade kernel-libbpf-develUpgrade kernel-develUpgrade python3-perfUpgrade kernel-tools-develUpgrade kernel-headersUpgrade kernelUpgrade perfUpgrade python3-perf-debuginfoUpgrade kernel-modules-extraUpgrade kernel-debuginfoUpgrade kernel-libbpf | Feb 17, 2025 | Aug 21, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Sep 2, 2024 | Aug 21, 2024 |
| Redhat_linux | — | Upgrade kernel-rtUpgrade kernelNo solution exists | Dec 5, 2024 | Aug 21, 2024 |
| Suse | — | Upgrade reiserfs-kmp-defaultUpgrade kernel-rt-optionalUpgrade ocfs2-kmp-defaultUpgrade kernel-64kb-extraUpgrade kernel-kvmsmall-vdsoUpgrade dlm-kmp-azureUpgrade kernel-default-optionalUpgrade kernel-rt_debug-develUpgrade dtb-allwinnerUpgrade kernel-defaultUpgrade kernel-source-rtUpgrade dlm-kmp-rtUpgrade kselftests-kmp-defaultUpgrade ocfs2-kmp-azureUpgrade dtb-caviumUpgrade kernel-default-livepatch-develUpgrade kernel-develUpgrade dtb-nvidiaUpgrade dtb-socionextUpgrade kernel-rt-vdsoUpgrade gfs2-kmp-defaultUpgrade kernel-default-base-rebuildUpgrade kernel-source-vanillaUpgrade gfs2-kmp-azureUpgrade reiserfs-kmp-azureUpgrade dtb-rockchipUpgrade kselftests-kmp-rtUpgrade kernel-debug-vdsoUpgrade kernel-azureUpgrade kernel-default-baseUpgrade kernel-rt_debugUpgrade dtb-armUpgrade reiserfs-kmp-rtUpgrade cluster-md-kmp-rtUpgrade kernel-docsUpgrade dtb-renesasUpgrade kernel-obs-buildUpgrade kernel-rt-extraUpgrade dlm-kmp-defaultUpgrade cluster-md-kmp-64kbUpgrade kselftests-kmp-azureUpgrade reiserfs-kmp-64kbUpgrade dtb-sprdUpgrade dtb-apmUpgrade kernel-syms-azureUpgrade dtb-broadcomUpgrade kernel-default-livepatchUpgrade kernel-default-develUpgrade kernel-64kb-develUpgrade kernel-64kb-optionalUpgrade dtb-exynosUpgrade kernel-symsUpgrade kernel-azure-extraUpgrade ocfs2-kmp-rtUpgrade kernel-azure-develUpgrade cluster-md-kmp-azureUpgrade dtb-appleUpgrade kernel-azure-vdsoUpgrade dtb-amlogicUpgrade kernel-rtUpgrade kernel-debugUpgrade kernel-64kbUpgrade kernel-docs-htmlUpgrade kernel-rt-develUpgrade kernel-default-extraUpgrade kernel-azure-optionalUpgrade dtb-xilinxUpgrade kernel-rt-livepatch-develUpgrade kernel-source-azureUpgrade gfs2-kmp-rtUpgrade kselftests-kmp-64kbUpgrade dtb-mediatekUpgrade dtb-marvellUpgrade dtb-hisiliconUpgrade dlm-kmp-64kbUpgrade kernel-rt_debug-vdsoUpgrade dtb-qcomUpgrade dtb-lgUpgrade cluster-md-kmp-defaultUpgrade kernel-zfcpdumpUpgrade kernel-default-vdsoUpgrade kernel-devel-azureUpgrade kernel-macrosUpgrade kernel-kvmsmall-develUpgrade ocfs2-kmp-64kbUpgrade kernel-sourceUpgrade dtb-amdUpgrade kernel-kvmsmallUpgrade dtb-amazonUpgrade kernel-debug-develUpgrade dtb-freescaleUpgrade dtb-alteraUpgrade kernel-devel-rtUpgrade kernel-syms-rtUpgrade gfs2-kmp-64kbUpgrade kernel-obs-qa | Dec 5, 2025 | Jun 12, 2025 |
| Ubuntu | — | Upgrade linux-image-6.8.0-50-lowlatency-64kUpgrade linux-image-5.15.0-125-genericUpgrade linux-image-oem-22.04dUpgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-1019-nvidia-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-1020-awsUpgrade linux-image-oem-20.04bUpgrade linux-image-genericUpgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1017-oracleUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-6.8.0-1016-raspiUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1069-gkeUpgrade linux-image-oem-20.04cUpgrade linux-image-gkeopUpgrade linux-image-nvidia-64kUpgrade linux-image-lowlatencyUpgrade linux-image-intelUpgrade linux-image-5.15.0-1075-azureUpgrade linux-image-5.15.0-1038-xilinx-zynqmpUpgrade linux-image-5.15.0-1069-kvmUpgrade linux-image-5.15.0-125-lowlatencyUpgrade linux-image-6.8.0-1020-azureUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-ibmUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1019-nvidia-lowlatencyUpgrade linux-image-oracle-64kUpgrade linux-image-intel-iotgUpgrade linux-image-oem-22.04bUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-oem-20.04Upgrade linux-image-gke-5.15Upgrade linux-image-5.15.0-125-generic-lpaeUpgrade linux-image-6.8.0-1020-azure-fdeUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oem-20.04dUpgrade linux-image-6.8.0-1017-ibmUpgrade linux-image-5.15.0-1070-oracleUpgrade linux-image-oem-22.04aUpgrade linux-image-oem-24.04Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-6.8.0-1019-nvidiaUpgrade linux-image-5.15.0-1065-raspiUpgrade linux-image-gcpUpgrade linux-image-ibm-classicUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-1072-awsUpgrade linux-image-5.15.0-1067-nvidia-lowlatencyUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-oracleUpgrade linux-image-aws-lts-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-125-lowlatency-64kUpgrade linux-image-5.15.0-1067-intel-iotgUpgrade linux-image-kvmUpgrade linux-image-gkeUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-5.15.0-1067-nvidiaUpgrade linux-image-generic-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-oem-22.04cUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidiaUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-azure-cvmUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-azureUpgrade linux-image-5.15.0-1055-gkeopUpgrade linux-image-5.15.0-1078-azureUpgrade linux-image-raspiUpgrade linux-image-5.15.0-1071-gcpUpgrade linux-image-5.15.0-125-generic-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-6.8.0-50-generic-64kUpgrade linux-image-5.15.0-1065-ibmUpgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-50-lowlatencyUpgrade linux-image-6.8.0-1019-nvidia-lowlatency-64kUpgrade linux-image-awsUpgrade linux-image-6.8.0-1017-oracle-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-50-genericUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1015-gkeUpgrade linux-image-6.8.0-1018-oemUpgrade linux-image-6.8.0-1019-gcpUpgrade linux-image-azure-fdeUpgrade linux-image-nvidia-lowlatency | Nov 12, 2024 | Aug 21, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Aug 21, 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